Thread View: be.comp.programming
4 messages
4 total messages
Started by t12be
Sun, 07 Mar 2004 19:59
Java vraag -> JDialog:
Author: t12be
Date: Sun, 07 Mar 2004 19:59
Date: Sun, 07 Mar 2004 19:59
100 lines
4613 bytes
4613 bytes
Heb zoals je in onderstaande code kunt zien (zijn 2 klassen, 1 met gui en
aparte met JDialog) een menu aangemaakt waarmee ik dan een JDialog oproep.
Alleen loopt het mis. Ik zie namelijk enkel de titel van m'n JDialog,
formaat klopt maw niet. De inhoud ervan zie ik pas wanneer ik eigenhandig
m'n JDialog vergroot.
.setSize() en .pack() halen niets uit
Iemand een oplossing? Ben er al een tijdje op aan het zoeken en geraak er
echt niet uit.
--
alvast bedankt,
t12be-AT-hotmail-DOT-com
//****************MyGUI.java*******************
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class MyGUI extends JFrame
{
private JMenuBar mb;
public MyGUI()
{
super("P4 Boekingssysteem");
//addWindowListener(new WindowAdapter(){ enz... });
Container c = getContentPane();
buildMenu();
setJMenuBar(mb);
c.add(new EvPanel());
}
public static void main(String args[])
{
MyGUI gui = new MyGUI();
gui.pack();
gui.setSize(640,480);
gui.setVisible(true);
}
private void buildMenu()
{
mb = new JMenuBar();
//gebr samenstellen + adden
JMenu gebr = new JMenu("Gebruiker");
JMenuItem login = new JMenuItem("Inloggen");
login.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
Login lg = new Login();
}});
gebr.add(login);
mb.add(gebr);
setJMenuBar(mb);
}
}//******************einde MyGUI.java************************
//*******************een tweede bestand*******************
//******************Login.java*********************
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Login extends JFrame
{
private JFrame frame;
public Login()
{
frame = new JFrame("Login");
pop();
frame.pack();
frame.setSize(200,100);
}
public void pop()
{
//moet final, anders anonieme inner classes ni mogelijk!
final JDialog dlg = new JDialog(frame,"Login",true);
Container c = dlg.getContentPane();
c.setLayout(new GridLayout(0,2));
JLabel naam = new JLabel("Naam");
c.add(naam);
JTextField naamTxt = new JTextField(10);
c.add(naamTxt);
JLabel paswoord = new JLabel("Paswoord");
c.add(paswoord);
JPasswordField pswd = new JPasswordField(10);
c.add(pswd);
JButton inloggen = new JButton("Inloggen");
c.add( inloggen );
JButton cancel = new JButton("Cancel");
cancel.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
dlg.dispose();
}});
c.add(cancel);
dlg.setVisible(true);
dlg.setSize(200,100);
dlg.pack();
}
}//*****************einde Login.java*************************
Re: Java vraag -> JDialog:
Author: Herman Timmermans
Date: Mon, 08 Mar 2004 10:42
Date: Mon, 08 Mar 2004 10:42
42 lines
2017 bytes
2017 bytes
t12be wrote:
> Heb zoals je in onderstaande code kunt zien (zijn 2 klassen, 1 met gui en
> aparte met JDialog) een menu aangemaakt waarmee ik dan een JDialog oproep.
> Alleen loopt het mis. Ik zie namelijk enkel de titel van m'n JDialog,
> formaat klopt maw niet. De inhoud ervan zie ik pas wanneer ik eigenhandig
> m'n JDialog vergroot.
>
> .setSize() en .pack() halen niets uit
>
> Iemand een oplossing? Ben er al een tijdje op aan het zoeken en geraak er
> echt niet uit.
>
Waarom niet je login class direct van JDialog afleiden?
zoiets als:
public class Login extends JDialog
{
......
public Login(JFrame parent, boolean modal)
{
...........
}
}
En dat in je programma oproepen als:
void fileOpen_ActionPerformed(ActionEvent e)
{
Login login = new Login(this, true);
login.pack();
login.show();
}
Dit werkt perfect met een gridbaglayout voor de login class.
Mvg,
Herman
--
Suse Linux Professional 8.1 on Athlon 1.1 Ghz 512 Mb
Anti Spam = remove the "dot" and the "at"
Registered Linux User #264690
Visit us : http://users.skynet.be/herman.timmermans
Re: Java vraag -> JDialog:
Author: t12be
Date: Mon, 08 Mar 2004 17:50
Date: Mon, 08 Mar 2004 17:50
81 lines
3381 bytes
3381 bytes
"Herman Timmermans" <timmermansdot.hermanat@skynet.be> schreef in bericht
news:404c4e65$0$307$ba620e4c@news.skynet.be...
> t12be wrote:
>
> > Heb zoals je in onderstaande code kunt zien (zijn 2 klassen, 1 met gui
en
> > aparte met JDialog) een menu aangemaakt waarmee ik dan een JDialog
oproep.
> > Alleen loopt het mis. Ik zie namelijk enkel de titel van m'n JDialog,
> > formaat klopt maw niet. De inhoud ervan zie ik pas wanneer ik
eigenhandig
> > m'n JDialog vergroot.
> >
> > .setSize() en .pack() halen niets uit
> >
> > Iemand een oplossing? Ben er al een tijdje op aan het zoeken en geraak
er
> > echt niet uit.
> >
> Waarom niet je login class direct van JDialog afleiden?
> zoiets als:
>
> public class Login extends JDialog
> {
> ......
> public Login(JFrame parent, boolean modal)
> {
> ...........
> }
> }
>
> En dat in je programma oproepen als:
>
> void fileOpen_ActionPerformed(ActionEvent e)
> {
> Login login = new Login(this, true);
> login.pack();
> login.show();
> }
>
> Dit werkt perfect met een gridbaglayout voor de login class.
> Mvg,
> Herman
> --
> Suse Linux Professional 8.1 on Athlon 1.1 Ghz 512 Mb
> Anti Spam = remove the "dot" and the "at"
> Registered Linux User #264690
> Visit us : http://users.skynet.be/herman.timmermans
Eerst en vooral bedankt voor de moeite.
Heb dit eens geprobeerd, maar wil nog niet meteen lukken. Dergelijke
opstelling had ik helemaal in het begin ook, alleen ben ik dan gaan prutsen
en kwam ik tot de code die in m'n post staat.
Als ik het doe zoals jij dan krijg ik die foutmelding:
C:\Documents and Settings\t12be.PERSONAL\Mijn
documenten\PROJECT!\JAVATRY\gui\MyGUI.java:72: cannot resolve symbol
symbol : constructor Login (<anonymous
java.awt.event.ActionListener>,boolean)
location: class Login
Login login = new Login(this, true);
Dus heb ik bovenaan de code van MyGUI.java (m'n programma dus feitelijk)
ipv van met super("titel"); te werken voor het aanmaken van m'n JFrame
volgende gedaan
private JFrame jf;
....
{
JFrame jf = new JFrame ("titel");
om dan ipv this jf te gebruiken als argument bij aanroepen
constructor.
Zo werkte het wel, alleen krijg ik die JDailog nog steeds verkleind.
--
mvg
t12be-AT-hotmail-DOT-com
Re: Java vraag -> JDialog:
Author: Herman Timmermans
Date: Mon, 08 Mar 2004 20:02
Date: Mon, 08 Mar 2004 20:02
91 lines
3889 bytes
3889 bytes
t12be wrote:
> "Herman Timmermans" <timmermansdot.hermanat@skynet.be> schreef in bericht
> news:404c4e65$0$307$ba620e4c@news.skynet.be...
>> t12be wrote:
>>
>> > Heb zoals je in onderstaande code kunt zien (zijn 2 klassen, 1 met gui
> en
>> > aparte met JDialog) een menu aangemaakt waarmee ik dan een JDialog
> oproep.
>> > Alleen loopt het mis. Ik zie namelijk enkel de titel van m'n JDialog,
>> > formaat klopt maw niet. De inhoud ervan zie ik pas wanneer ik
> eigenhandig
>> > m'n JDialog vergroot.
>> >
>> > .setSize() en .pack() halen niets uit
>> >
>> > Iemand een oplossing? Ben er al een tijdje op aan het zoeken en geraak
> er
>> > echt niet uit.
>> >
>> Waarom niet je login class direct van JDialog afleiden?
>> zoiets als:
>>
>> public class Login extends JDialog
>> {
>> ......
>> public Login(JFrame parent, boolean modal)
>> {
>> ...........
>> }
>> }
>>
>> En dat in je programma oproepen als:
>>
>> void fileOpen_ActionPerformed(ActionEvent e)
>> {
>> Login login = new Login(this, true);
>> login.pack();
>> login.show();
>> }
>>
>> Dit werkt perfect met een gridbaglayout voor de login class.
>> Mvg,
>> Herman
>> --
>> Suse Linux Professional 8.1 on Athlon 1.1 Ghz 512 Mb
>> Anti Spam = remove the "dot" and the "at"
>> Registered Linux User #264690
>> Visit us : http://users.skynet.be/herman.timmermans
>
> Eerst en vooral bedankt voor de moeite.
>
> Heb dit eens geprobeerd, maar wil nog niet meteen lukken. Dergelijke
> opstelling had ik helemaal in het begin ook, alleen ben ik dan gaan
> prutsen en kwam ik tot de code die in m'n post staat.
>
> Als ik het doe zoals jij dan krijg ik die foutmelding:
>
> C:\Documents and Settings\t12be.PERSONAL\Mijn
> documenten\PROJECT!\JAVATRY\gui\MyGUI.java:72: cannot resolve symbol
> symbol : constructor Login (<anonymous
> java.awt.event.ActionListener>,boolean)
> location: class Login
> Login login = new Login(this, true);
>
> Dus heb ik bovenaan de code van MyGUI.java (m'n programma dus
> feitelijk)
> ipv van met super("titel"); te werken voor het aanmaken van m'n JFrame
> volgende gedaan
>
> private JFrame jf;
> ....
> {
> JFrame jf = new JFrame ("titel");
>
> om dan ipv this jf te gebruiken als argument bij aanroepen
> constructor.
>
> Zo werkte het wel, alleen krijg ik die JDailog nog steeds verkleind.
>
Hoe compileer je? Command line of via een IDE (welke IDE?)
Het moet werken op de manier die ik je beschreef, je moet uitvissen waarom
dit niet gaat. Ik vermoed een classpath issue? Misschien all je classes
in een package plaatsen?
Mvg, Herman
--
Suse Linux Professional 8.1 on Athlon 1.1 Ghz 512 Mb
Anti Spam = remove the "dot" and the "at"
Registered Linux User #264690
Visit us : http://users.skynet.be/herman.timmermans
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads