Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Java - Action Button

Čau,

chtěl bych se zeptat, jak udělat jednu funkci v mém programu.

Takhle to vypadá (rozložení BorderLayout, postranní žlutý panel WEST, bílý panel CENTER)
docas.jpg

Udělal jsem si třídu Formulář, který vytvoří klasický formulář se jménem, příjmením atp.

A já potřebuji, po stisknutí tlačítka "Založit novou rezervaci", aby se mi ten formulář objevil v té bílé části, nevím jak na to, vytvořím si actionListener u toho tlačítka, jen nevím, co napsat do něj.

Díky předem za každou radu :)

Předmět Autor Datum
Rozumim tomu trošku, ale domnivam ze, že to co chceš není uplně možné ;) Nejsem si jist, jestli java… nový
AZOR 24.05.2010 13:15
AZOR
Já vim, já neveděl jak to pořádně popsat :) .. díky za odpověď, podívám se na ten odkaz, snad pomůže… nový
nnn 24.05.2010 13:17
nnn
Jde o to, že pokud máš dvě třídy JFrame a JFrame, tak je (pokud se nepletu) nemužeš dát do sebe. Pok… nový
AZOR 24.05.2010 13:19
AZOR
Dej si do na to bílé místo JPanel, do něho si udělej ten svůj formulář. A pak už jen volej na ten JP… nový
MaSo 24.05.2010 13:16
MaSo
Ta bílá část je JPanel (hlavniOkno) .. zkoušel jsem hlavniOkno.add(formular) .. ale tak lehce to nej… nový
nnn 24.05.2010 13:19
nnn
Jestli jsi to psal, tak u toho druhého co dáváš hlavniOkno.add(formular) máš někde: public ... Form… nový
AZOR 24.05.2010 13:22
AZOR
takhle to vypadá :) restaurace.rar jdu teda zkusit něco s tim provést nový
nnn 24.05.2010 13:30
nnn
Prostě do toho JFrame vložíš JPanel, ve kterém bude ten formulář. pokud máš třeba: JFrame mainWind… nový
MaSo 24.05.2010 13:25
MaSo
restaurace.rar :) nový
nnn 24.05.2010 13:30
nnn
mno nějak mi to pořád nebeží .. nevim kde je chyba :).. pravděpodobně nekde s tim getContent.. nový
nnn 24.05.2010 14:01
nnn
Marie matko Boží! Kde jsi viděl mít Java třídy jako *.txt soubor? Trochu jsem to upravil, vzhled si… nový
MaSo 24.05.2010 14:17
MaSo
wow, díky moc!! to je přesně ono .. samozřejme třídy tak neukládám, pracuji v Eclipse, jen jsem to p… nový
nnn 24.05.2010 14:22
nnn
Já bych to asi udělal tak, že po stisknutí tlačítka, které by bylo odkaz na soubor třeba objednavkov… nový
Kráťa 24.05.2010 14:53
Kráťa
Ale to nemá nic společného s válcováním silnic...::) nový
MaSo 24.05.2010 15:03
MaSo
Jakto že ne? Když nebudeš mít pro válec databázi dostupného paliva, můžeš dělat Jpress jak chceš a s… poslední
Kráťa 24.05.2010 15:10
Kráťa

Rozumim tomu trošku, ale domnivam ze, že to co chceš není uplně možné ;)
Nejsem si jist, jestli java podporuje formulář do formuláře (jako JFrame)
a) bud budeš muset použít třídu na Formular takovou, která to umožnuje - tuto: http://www.zaachi.com/cs/items/java-a-zaklady-gui- 5-internalframe.html

b) vykašleš se na formulář a uděláš to jako JPanel a jenom to tam přidáš jako komponentu.
c) uděláš to jako nové okno
d) něco uplně jinéh ;) možností je dost.

Jde o to, že pokud máš dvě třídy JFrame a JFrame, tak je (pokud se nepletu) nemužeš dát do sebe. Pokud z toho Formulář uděláš JPanel (což se teoreticky dá udělat přepsáním jednoho slova) a pak to bude jakoby panelová komponenta, kterou stačí přidat na hlavní JFrame ze kterého je screenshot a nebo budeš muset vysloveně použít třídy, které jsou určené k tomu (to byl ten odkaz) aby jsi mohl dávat frames do frames.

Ta bílá část je JPanel (hlavniOkno) .. zkoušel jsem hlavniOkno.add(formular) .. ale tak lehce to nejde :) .. mám to do školy a nejsem programátor, takže s tim mám problém :) .. můžeš mi trochu prosím rozvést, jak do toho JPanelu teda udělám ten formulář? :X

Jestli jsi to psal, tak u toho druhého co dáváš hlavniOkno.add(formular) máš někde:

public ... Formular extends JFrame implements ActionListener...

tak misto toho JFrame napiš JPanel, s tím, že pokud máš vývojové prostředí, tak Ti akorád zařve, že některé metody JPanel o proti JFrame nemá (DeflalutCloseOperation...) a budeš případně muset trošku upravit kod.

Prostě do toho JFrame vložíš JPanel, ve kterém bude ten formulář.

pokud máš třeba:

JFrame mainWindow = new JFrame();

tak si vytvoř ten formulář

JPanel formular = new JPanel();
formular.add( co je treba );

nakonec uděláš:

mainWindow.getContentPane().add(formular);

a v tlačítku zavoláš

formular.setVisible(true);

az budeš chtít, aby byl form vidět...

EDIT: když tu hodíš zdrojáky, tak se ti na to mrknu...

Já bych to asi udělal tak, že po stisknutí tlačítka, které by bylo odkaz na soubor třeba objednavkovy-formular.html.
Ty objednávky by se ukládaly do databáze (s datumy a časy) a když by si chtěl někdo zobrazit zadané, bylo by to další tlačítko odkaz zase třeba na objednane.php, kde by se to vypisovalo z databáze podle zadaného data a času.

Zpět do poradny Odpovědět na původní otázku Nahoru