Apua NetBeans-harjoitukseen?

Tyhmä?

Moi!

Mun pitäisi tehdän NetBeansillä oheiselle ohjelmalle lomake ja yhteydet tietokantaan. Olen aloittanut lomakkeen teon, mutten osaa tehdä tarvittavia kytköksiä koodiin ja tietokantaan. Osaako joku auttaa?

Ohjelma


public class taivutus1 {

public static void main (String[] args)
   
   {
      //muuttujien määrittely
   
      String infinitiivi;
                     
      //otetaan scanner toiminto käyttöön
      Scanner lukija = new Scanner (System.in);
      
      //pyydetään käyttäjää syöttämään verbin infinitiivi
      System.out.println("Syota verbin infinitiivi:");
      infinitiivi = lukija.next();
      System.out.println("\n");
      
      int pituus;
      int n;
      
      pituus = infinitiivi.length(); // kysytään merkkijonon pituus
      if (pituus 3 & infinitiivi.endsWith("aa") || infinitiivi.endsWith("ea") || infinitiivi.endsWith("ia") || infinitiivi.endsWith("oa") || infinitiivi.endsWith("ua") || infinitiivi.endsWith("\u00E4\u00E4") || infinitiivi.endsWith("\u201E\u201E")||infinitiivi.endsWith ("\u0079\u00E4") || infinitiivi.endsWith ("\u0079\u201E")||infinitiivi.endsWith ("\u0065\u00E4") || infinitiivi.endsWith ("\u0065\u201E") ||infinitiivi.endsWith ("\u0069\u00E4") || infinitiivi.endsWith ("\u0069\u201E"))
      
      {
      System.out.println("Verbi kuuluu 1. ryhm\u201E\u201En");
      }
      
      else
      {
      System.out.println("Tama ei kuulu 1. ryhm\u201E\u201En");
      }
      
      if ( infinitiivi.endsWith("kkua"))
      {
      System.out.println ("min\u201E " infinitiivi.replace ("kkua","kun"));
      System.out.println ("sin\u201E " infinitiivi.replace ("kkua","kut"));
      System.out.println ("h\u201En " infinitiivi.replace ("kkua","kkuu"));
      System.out.println ("me " infinitiivi.replace ("kkua","kumme"));
      System.out.println ("te " infinitiivi.replace ("kkua","kutte"));
      System.out.println ("he " infinitiivi.replace ("kkua","kkuvat"));
      }
      
      if ( infinitiivi.endsWith("ppia"))
      {
      System.out.println ("min\u201E " infinitiivi.replace ("ppia","pin"));
      System.out.println ("sin\u201E " infinitiivi.replace ("ppia","pit"));
      System.out.println ("h\u201En " infinitiivi.replace ("ppia","ppii"));
      System.out.println ("me " infinitiivi.replace ("ppia","pimme"));
      System.out.println ("te " infinitiivi.replace ("ppia","pitte"));
      System.out.println ("he " infinitiivi.replace ("ppia","ppivat"));
      }
}

}

LOMAKE

public class lomake extends javax.swing.JFrame {
private Object sanat;

/** Creates new form lomake */
public lomake() {
initComponents();
}

/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
//
private void initComponents() {
bindingGroup = new org.jdesktop.beansbinding.BindingGroup();

infinitiivi = new javax.swing.JLabel();
juillet = new javax.swing.JLabel();
txtverbi = new javax.swing.JTextField();
btnTaivutus = new javax.swing.JToggleButton();
btnLisää = new javax.swing.JToggleButton();
btnsulje = new javax.swing.JToggleButton();
jScrollPane1 = new javax.swing.JScrollPane();
txtaTaivutus = new javax.swing.JTextArea();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("TAIVUTUS");

juillet.setFont(new java.awt.Font("Tahoma", 0, 18));
juillet.setForeground(new java.awt.Color(255, 0, 0));
juillet.setText("Syötä verbin infinitiivi ");

txtverbi.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtverbiActionPerformed(evt);
}
});

btnTaivutus.setText("TAIVUTAA");

org.jdesktop.beansbinding.Binding binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, txtverbi, org.jdesktop.beansbinding.ELProperty.create("${text}"), btnTaivutus, org.jdesktop.beansbinding.BeanProperty.create("selected"));
bindingGroup.addBinding(binding);

btnTaivutus.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnTaivutusActionPerformed(evt);
}
});

btnLisää.setText("LISÄÄ TIETOKANTAAN");
btnLisää.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnLisääActionPerformed(evt);
}
});

btnsulje.setText("SULJE");
btnsulje.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnsuljeActionPerformed(evt);
}
});

txtaTaivutus.setColumns(20);
txtaTaivutus.setRows(5);
jScrollPane1.setViewportView(txtaTaivutus);

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(juillet, javax.swing.GroupLayout.PREFERRED_SIZE, 196, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addComponent(btnLisää, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(txtverbi, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 146, Short.MAX_VALUE))
.addGap(18, 18, 18)
.addComponent(btnTaivutus)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)))
.addGroup(layout.createSequentialGroup()
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(infinitiivi, javax.swing.GroupLayout.PREFERRED_SIZE, 239, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGap(113, 113, 113))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addComponent(btnsulje, javax.swing.GroupLayout.PREFERRED_SIZE, 74, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(43, 43, 43))))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(juillet, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(22, 22, 22)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(txtverbi, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnTaivutus))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btnLisää)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(infinitiivi, javax.swing.GroupLayout.PREFERRED_SIZE, 98, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 21, Short.MAX_VALUE)
.addComponent(btnsulje)
.addContainerGap())
);

bindingGroup.bind();

pack();
}//

private void txtverbiActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:
}

private void btnLisääActionPerformed(java.awt.event.ActionEvent evt) {
}

private void btnsuljeActionPerformed(java.awt.event.ActionEvent evt) {
System.exit(0);// TODO add your handling code here:
}

private void btnTaivutusActionPerformed(java.awt.event.ActionEvent evt) {

System.out.println("\n");

for(int i = 0; i < sanat.length; i);

}

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new lomake().setVisible(true);
}
});
}

// Variables declaration - do not modify
private javax.swing.JToggleButton btnLisää;
private javax.swing.JToggleButton btnTaivutus;
private javax.swing.JToggleButton btnsulje;
private javax.swing.JLabel infinitiivi;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JLabel juillet;
private javax.swing.JTextArea txtaTaivutus;
private javax.swing.JTextField txtverbi;
private org.jdesktop.beansbinding.BindingGroup bindingGroup;
// End of variables declaration

}

2

736

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • if-else

      Kun testasin tuota lomakkeen koodia, niin siinä painikkeet jäivät pohjaan ja verbi kenttään tulostui true/false kun "TAIVUTA" nappia painoi. Lisäksi koodissa oli turha rivi "for(int i = 0; i < sanat.length; i);" jolle kääntäjä heitti herjaa.

      Jos saat sen true/false tulosteen pois, niin saat verbin taivutuksen siihen isoon taivutus teksti kenttään seuraavasti. Muuta lomakkeen btnTaivutsActionPerformed -metodi alla olevan kaltaiseksi. Eli siinä 1) haetaan verbi tekstikentästä, 2) taivutetaan verbi, 3) asetetaan taivutuksen tulos taivutus tekstikenttään.

      --- ALKAA ---

         private void btnTaivutusActionPerformed(java.awt.event.ActionEvent evt) {
            txtaTaivutus.setText(taivutus1.taivuta(txtverbi.getText()));
         }

      --- LOPPUU ---

      Lisää taivutus1 luokaan alla oleva metodi, eli metodi joka hoitaa taivutuksen:

      ---- ALKAA ---

         public static String taivuta(String infinitiivi) {
            String taivutus = "";

            if (infinitiivi.endsWith("kkua")) {
               taivutus = "minä " infinitiivi.replace("kkua", "kun") "\n";
               taivutus = "sinä " infinitiivi.replace("kkua", "kut") "\n";
               taivutus = "hän " infinitiivi.replace("kkua", "kkuu") "\n";
               taivutus = "me " infinitiivi.replace("kkua", "kumme") "\n";
               taivutus = "te " infinitiivi.replace("kkua", "kutte") "\n";
               taivutus = "he " infinitiivi.replace("kkua", "kkuvat") "\n";
            } else if (infinitiivi.endsWith("ppia")) {
               taivutus = "minä " infinitiivi.replace("ppia", "pin") "\n";
               taivutus = "sinä " infinitiivi.replace("ppia", "pit") "\n";
               taivutus = "hän " infinitiivi.replace("ppia", "ppii") "\n";
               taivutus = "me " infinitiivi.replace("ppia", "pimme") "\n";
               taivutus = "te " infinitiivi.replace("ppia", "pitte") "\n";
               taivutus = "he " infinitiivi.replace("ppia", "ppivat") "\n";
            }
            else
            {
               taivutus = "Ei taivutusta\n";
            }
            
            return taivutus;
         }

      --- LOPPUU ---


      Latasin Netbeansin juuri äsken joten en tiedä miten siinä asiat pitäisi tehdä. Joku Netbeans käyttäjä varmaan osaa kertoa tarkemmin. Sen true/falsen sain pois kun kommentoin pois "bindingGroup.addBinding(binding);" -rivin ja sen yläpuolella olleen rivin.

      Tietokannasta en tiedä mitään. Mitä sen napin pitäisi tehdä ja miten tietokantaa on tarkoitus käyttää?

      • Tyhmä!?

        Hei!

        Kiitoksia vastauksista joista on paljon apua. Tietokanta-napin idea oli se että taivutetut muodot tallentuvat tietokantaan (esim. Accessiin tai vastaavaan)


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Miten voi olla muun sukupuolinen?

      Ei mitenkään. Kyllä tämä Euroviisujen voittaja on selvästi poika eikä tyttö, eikä mikään muun sukupuolinen. Olen aina pi
      Maailman menoa
      443
      2769
    2. Tunnustan nyt

      Tykkään katsella sua😍
      Ikävä
      40
      1315
    3. Huomenna teen sen

      Se on nyt päätetty. Pääsen pois tästä epätietosuudesta.
      Ikävä
      51
      1171
    4. Kuka on Suomussalmen rikkain mies?

      Jättäkää nimi pois, mutta antakaa sen verran vinkkiä, ettei erehdystä voi tulla. Ammatti pittää mainita.
      Suomussalmi
      33
      1136
    5. Hakkarainen: persut Venäjän ja Pohjois-Korean tiellä

      Hakkarainen entisenä persujen kärkipoliitikkona tietää, mitä puhuu. https://www.is.fi/politiikka/art-2000010422614.html
      Maailman menoa
      161
      1111
    6. Olipa kärsimystä kuunnella Martinaa huomenta suomessa

      Voi hyvää päivää sitä ulostuloa ja mitä liibalaabaa päästi suustaan. Esim. Kaikki äidit tietää mitä se arki on, what, mu
      Kotimaiset julkkisjuorut
      221
      1048
    7. Volkkari olkoon tunniste....

      Ajattelen sua, en ole unohtanut. Vanhemmalle miehelle...
      Suhteet
      97
      953
    8. Tunnusta pois

      Tykkäät katsella mua
      Ikävä
      60
      882
    9. Tiesitkö nainen että olen

      Tavattoman epävarma itsestäni. Pienikin takapakki tahaton tai tahallinen voi särkeä paljon ja vaikuttaa käytökseeni teh
      Ikävä
      39
      867
    10. Idän uskontojen viisaita tekstejä...

      ... luettuani tulin siihen tulokseen, että esim, sielunvaellusessa en halua syntyä satiaiseksi jonkun h...an perzeezeen.
      357
      794
    Aihe