15. september 2008 - 14:57
Der er
10 kommentarer og 1 løsning
Laver ged i parametre
Jeg sidder med et simpel problem, som min hjerne umiddelbart ikke kan se en løsning på. jeg har 2 klasser. I den ene klasse sender jeg en parameter over i den anden klasses metode. Når jeg så i min main metode kalder på den pågældende metode, skal jeg skrive en parameter i dens funk(parameter). Men de parametre jeg skriver, giver null, da de ikke sat til noget,forståeligt nok. hvordan får jeg hentet parameteren over ? sig til hvis det er besværligt at forstå
Annonceindlæg fra Partnertekst
15. september 2008 - 15:02
#1
Det er lidt svært at forstå. Prøv at sætte metodens kode ind her og den kode du skriver for at kalde den.
15. september 2008 - 15:06
#2
public JPanel gentagPwd (JPanel p,JPasswordField f) { p1 = p; pwdfelt = f; JLabel inputLabel3 ; p1.add(new JLabel()); inputLabel3 = new JLabel("Gentag Password :"); inputLabel3.setLabelFor(pwdfelt); p1.add(inputLabel3); pwdfelt.validate(); p1.add(pwdfelt); pwdfelt.addActionListener(new ActionListener () { // Pop-op besked for "Gentag kode" public void actionPerformed(ActionEvent e) { if(e.getActionCommand().equals(navn2.getText())) { String bsk = "Gentag nu koden 30 gange"; JOptionPane.showMessageDialog(null,bsk); IterationGUI itegui = new IterationGUI(); itegui.makeGUI(navn2.getText()); } else { String bsk ="Forkert kode - Gentag venligst igen"; JOptionPane.showMessageDialog(null,bsk); pwdfelt.requestFocus(); pwdfelt.setText(""); } } }); return p1; }
15. september 2008 - 15:07
#3
i if løkken opretter jeg et obj fra den anden klasse "IterationGUI", og sender et parameter over "navn2.getText()"
15. september 2008 - 15:08
#4
I den anden klasses main funk, prøver jeg så at læse værdien, dvs. "navn2.getText()", hvilken jeg ikke lige kan finde ud af public static void main(String [] args){ final String tmp; javax.swing.SwingUtilities.invokeLater(new Runnable() { public void run() { IterationGUI gui = new IterationGUI (); String tmp = makeGUI(); System.out.println("tmp :" + tmp); gui.setVisible(true); } }); } public static String makeGUI(String str){ System.out.println("qtek "+str); temp = str; return temp; }
15. september 2008 - 15:38
#5
forståeligt ????
15. september 2008 - 15:41
#6
IterationGUI itegui = new IterationGUI(); itegui.makeGUI(navn2.getText()); Du skal vel gemme og bruge en reference til det objekt du opretter.
15. september 2008 - 15:47
#7
Nu hvor folk ikk lige svarede tilbage,har jeg fjernet sætningen "itegui.makeGUI(navn2.getText)", og i stedet sat navn2.getText()i constructor for IterationGUI. Mit prob er pt (tror jeg), at i selve IterationGUI klassens main metode, opretter jeg et obj af selve klassen. Under oprettelsen skal jeg skrive noget ala : IterationGUI itrgui = new IterationGUI (.......) ??????? Det er her prob opstår.. jeg skal referere til den variabel, som constructor læser foroven.
15. september 2008 - 15:53
#8
jeg tror problemet er delvist løst...
16. september 2008 - 15:23
#9
Hvad skal man skrive i ActionPerformed (), hvis man ønsker at trykke på Enter for at hoppe fra en JTextField til en anden JTextField ?
16. september 2008 - 21:36
#10
.
24. september 2008 - 22:00
#11
Hmmm.. Altså du ønsker at gå fra et jtextfield til et andet..? Eller ønsker du at kalde en metode på det andet textfield er lidt forvirret..
Kurser inden for grundlæggende programmering