Hallo,
Hoe kan ik mijn applicatie stoppen tijdens het runnen zodat hij bijvoorbeeld wacht tot dat ik een button heb ingedrukt.
Ik roep vanuit mij java applicatie een frame class op die een frame bevat met een jlabel en jbuttons. Mijn library roept hem netjes op met een callback functie. Echter is het probleem dat hij daarna vrolijk verder gaat met zijn handelingen. Waardoor dus de Frame GUI geen nut meer heeft om dat hij daar al voorbij is.
Ik roep hem als volgt op vanuit mijn java main.
Daarna roept hij dus Begin(); op
Daarna Start();
In mijn library wordt MBox aangeroepen dat hij mag starten. MBox haalt vervolgens mijn frame op.
Source code is nu een beetje raar en niet logisch, komt omdat ik alles heb weggehaa;t dat niet van toepassing is bij deze topic.
PROBLEEM:
Hij roept meteen Terminate() Nadat Start() afisgehandeld. Ik moet dus in deze Start method er iets in zetten wat zegt dat hij niet verder mag, maar moet wachten op een actie. (button select value).
Suggesties.
GR Azi
Hoe kan ik mijn applicatie stoppen tijdens het runnen zodat hij bijvoorbeeld wacht tot dat ik een button heb ingedrukt.
Ik roep vanuit mij java applicatie een frame class op die een frame bevat met een jlabel en jbuttons. Mijn library roept hem netjes op met een callback functie. Echter is het probleem dat hij daarna vrolijk verder gaat met zijn handelingen. Waardoor dus de Frame GUI geen nut meer heeft om dat hij daar al voorbij is.
Ik roep hem als volgt op vanuit mijn java main.
Java:
1
2
3
4
5
6
7
8
9
10
| public static void main(String[] args) { try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch(Exception e) { e.printStackTrace(); } Begin(); } |
Daarna roept hij dus Begin(); op
Java:
1
2
3
4
5
6
7
8
| public Pcimain(String[] args) { PciStart (); PciTerminate (); } static { System.loadLibrary ("library"); } |
Daarna Start();
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
| public class Mijnclass { public native int Start (); /*----------------------------MessageBox---------------------------------*/ boolean packFrame = false; //Open class MBoxFrame private void mbox() { MBoxFrame frame = new MBoxFrame(); //Validate frames that have preset sizes //Pack frames that have useful preferred size info, e.g. from their layout if (packFrame) { frame.pack(); } else { frame.validate(); } //Center the window Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize = frame.getSize(); if (frameSize.height > screenSize.height) { frameSize.height = screenSize.height; } if (frameSize.width > screenSize.width) { frameSize.width = screenSize.width; } frame.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2); frame.setVisible(true); } |
In mijn library wordt MBox aangeroepen dat hij mag starten. MBox haalt vervolgens mijn frame op.
Source code is nu een beetje raar en niet logisch, komt omdat ik alles heb weggehaa;t dat niet van toepassing is bij deze topic.
PROBLEEM:
Hij roept meteen Terminate() Nadat Start() afisgehandeld. Ik moet dus in deze Start method er iets in zetten wat zegt dat hij niet verder mag, maar moet wachten op een actie. (button select value).
Suggesties.
GR Azi
[ Voor 3% gewijzigd door Verwijderd op 06-11-2003 14:21 ]