Toon posts:

[JAVA] Jinternal frame

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ok, here is the problem

We hebben een hoofdscherm ( extends Jframe) daarin kunnen we een aantal Jinternal frames plaatsen (bijvoorbeeld een klanten scherm). Nu willen we vanuit zo'n een JInternal frame , nog een JInternal frame oproepen ( in praktijk : vanuit klanten een apart formuliertje om een gemeente te kiezen adhv comboboxen).

Dat formulier om klanten te kiezen werkt als
-ik het als basisscherm oproep ( gewoon extends Jframe)
-ik het vanuit het hoofdscherm oproep ( dus gewoon als internal frame)
-maar niet als ik het wil oproepen als Jinternal frame vanuit het Jinternal frame klanten...

De reden waarom ik dat zo wil doen is omdat ik dat formulier voor kiesgemeente op meerder plaatsen wil gaan gebruiken (klanten, medewerkers, ...)


class Hoofdscherm extends JFrame
{
...
}

class FrmKlanten extends JInternalFrame
{
...
}

Hoe kan ik dit probleem oplossen, in de docs vind ik daar niks over ...
class FrmKiesGemeente ... ? ?

  • Robtimus
  • Registratie: November 2002
  • Laatst online: 27-05 21:44

Robtimus

me Robtimus no like you

Misschien een JDialog? Of een JOptionPane?
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import javax.swing.*;

public class Test
{
    public static void main(String[] args)
    {
        JComboBox box1 = new JComboBox();
        box1.addItem("Bla");
        box1.addItem("Hee");
        JComboBox box2 = new JComboBox();
        box2.addItem("C++");
        box2.addItem("Java");
        box2.addItem("Delphi");
        JOptionPane.showMessageDialog(null, new Object[] {box1, box2});
        System.out.println(box1.getSelectedItem());
        System.out.println(box2.getSelectedItem());
        System.exit(0);
    }
}
Dit laat een dialog zien met alleen 2 JComboBoxen. Zo kun je er zelf nog meer mee spelen.

Nadeel is wel dat het niet binnen je andere frame valt maar op de voorgrond treedt.

[ Voor 5% gewijzigd door Robtimus op 26-01-2004 10:59 ]

More than meets the eye
There is no I in TEAM... but there is ME
system specs


  • Potatoman
  • Registratie: September 2000
  • Laatst online: 26-05 21:55

Potatoman

koniwa

Als je een JDesktopPane aan je JInternalFrame toevoegt, kan je daar weer
JInternalFrames in zetten, maar het resultaat is dan niet echt geweldig.
In jouw voorbeeld lijken dialoogjes mij de beste oplossing, en anders zou je
nog tabbladen kunnen overwegen :)

The cyclographing developer


Verwijderd

Topicstarter
@ Iceman:

Dat is inderdaad een optie ja. Maar dan is meteen mijn hele idee naar de haaien. Ik wou 1 formulier maken dat ik zowel in het formulier klanten als in het formulier medewerker kon gebruiken (kwestie van een beetje code te verdelen over paar formulieren)...

Met jouw methode zou ik alle code uit frmKiesgemeente moeten kopieren en plakken in klanten EN medewerkers....

Ik ga het eens proberen door JdesktopPane toe toetevoegen aan frmklanten en medewerkers.

  • Postman
  • Registratie: Februari 2000
  • Laatst online: 01-05 13:23
Je voegt een JDesktopPane toe aan je hoofdscherm (jouw JFrame dus). En dan voeg je de JInternalFrames weer toe aan de desktopPane.

Om vanuit een JInternalFrame een tweede (of derde, of vierde, enz ;)) te maken, haal je de huidige desktopPane op en voeg je daar de nieuwe frame aan toe (getCurrentDesktopPane() als ik me niet vergis).

Desktops and Internalframes zijn geweldig btw. JBuilder maakt er ook gebruik van, en als je een applicatie zoals Flash, Photoshop, Word, etc wilt namaken is dat de enige weg.


Verder kun je via de forums op java.sun.com heel veel informatie vinden. Ik weet zelfs haast wel zeker dat je daar meer vindt en krijgt dan hier.