Al enige tijd probeer ik een GUI te designen en het gaat mij slecht af. Ik heb al enige tijd ervaring met java, maar met GUI's ben ik nooit erg intensief bezig geweest op wat simpele layoutmanagers na. Ongeveer 2 maanden terug wilde ik een applicatie gaan maken, maar ik liep al snel stuk op de layoutmanager gridbaglayout. Nog nooit zoeen gedrocht gezien. Op zich snap ik het principe en ook nog een klein beetje hoe het werkt. Echter vreemd genoeg wat ik ook typte, er komt altijd wat anders uit dan dat ik dacht dat ik uberhaupt typte. Ongeveer zoals dit filmpje
Nu ben ik verder wezen zoeken op dit forum en kwam uit op de FormLayout library van JGoodies.
De volgende gui had ik in gedachte:

En dit is tot hoever ik tot op heden gekomen ben

En hieronder het relevant stukje code:
Hetzelfde scherm had ik eigelijk ook al bereikt met de GridBagLayout, die inmiddels weer verwijderd is van mijn HD. Ik weet dat coderequests hier uit de boze zijn, maar wie kan mij het juiste schopje in de goede richting geven?
Concreet zijn mijn vragen dus:
1. Hoe zorg ik voor een verhouding van 25%, 50%, 25% als ik 3 panels naast elkaar gooi. Nu zijn de panels nog fixed.
2. Een GAP creeer bij de linker en rechter panel ten opzichte van de bovenste panel (dus dat die gelijk staat met de tablijn)
3. Hoe creeert de meer dan gemiddelde java-programmeur doorgaans zijn gui die net even wat moeilijker is dan een simpele dialogbox. 3rd party libraries, tools? Of gewoon de standaard aanwezige library's in java?
Ik neig er bijna naar om naar de null-layout te grijpen. Over die laatste vraag. Ik heb al geprobeerd met de idea formdesigner te werken, maar het gebruik van xml files om de gui te renderen staat me tegen.
Matisse van netbeans vind ik ook niets omdat je dan sommige gegenereerde stukken van de code niet meer mag editen. De gridbaglayout dacht ik in haar totaliteit te snappen, maar steeds wanneer ik weer wat gecode had, kwam er totaal want anders uit dan ik dacht te schrijven. (gebrek aan grafisch inzicht? Ik kom er gewoon niet uit terwijl ik weet wat de verschillende attributen inhouden). Ook de plug-in van jgoodies met de formdesigner gebruik ik liever niet omdat je dan ook weer met gegenereerde stukken code werkt.
Nu ben ik verder wezen zoeken op dit forum en kwam uit op de FormLayout library van JGoodies.
De volgende gui had ik in gedachte:

En dit is tot hoever ik tot op heden gekomen ben

En hieronder het relevant stukje code:
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| CellConstraints cc = new CellConstraints(); setLayout(new FormLayout( new ColumnSpec[]{ new ColumnSpec(ColumnSpec.FILL, Sizes.DEFAULT, FormSpec.DEFAULT_GROW), FormFactory.LABEL_COMPONENT_GAP_COLSPEC, new ColumnSpec(ColumnSpec.FILL, Sizes.DEFAULT, FormSpec.DEFAULT_GROW), FormFactory.LABEL_COMPONENT_GAP_COLSPEC, new ColumnSpec(ColumnSpec.FILL, Sizes.DEFAULT, FormSpec.DEFAULT_GROW) }, new RowSpec[]{ new RowSpec(RowSpec.FILL, Sizes.DEFAULT, FormSpec.DEFAULT_GROW), FormFactory.LINE_GAP_ROWSPEC, FormFactory.DEFAULT_ROWSPEC })); _leftPane.setViewportView(_leftMenu); this.add(_leftPane, cc.xy(1, 1)); this.add(_centerPane, cc.xy(3, 1)); this.add(_rightPane, cc.xy(5, 1)); this.add(_jStatusBar, cc.xyw(1, 3, 5)); |
Hetzelfde scherm had ik eigelijk ook al bereikt met de GridBagLayout, die inmiddels weer verwijderd is van mijn HD. Ik weet dat coderequests hier uit de boze zijn, maar wie kan mij het juiste schopje in de goede richting geven?
Concreet zijn mijn vragen dus:
1. Hoe zorg ik voor een verhouding van 25%, 50%, 25% als ik 3 panels naast elkaar gooi. Nu zijn de panels nog fixed.
2. Een GAP creeer bij de linker en rechter panel ten opzichte van de bovenste panel (dus dat die gelijk staat met de tablijn)
3. Hoe creeert de meer dan gemiddelde java-programmeur doorgaans zijn gui die net even wat moeilijker is dan een simpele dialogbox. 3rd party libraries, tools? Of gewoon de standaard aanwezige library's in java?
Ik neig er bijna naar om naar de null-layout te grijpen. Over die laatste vraag. Ik heb al geprobeerd met de idea formdesigner te werken, maar het gebruik van xml files om de gui te renderen staat me tegen.
Matisse van netbeans vind ik ook niets omdat je dan sommige gegenereerde stukken van de code niet meer mag editen. De gridbaglayout dacht ik in haar totaliteit te snappen, maar steeds wanneer ik weer wat gecode had, kwam er totaal want anders uit dan ik dacht te schrijven. (gebrek aan grafisch inzicht? Ik kom er gewoon niet uit terwijl ik weet wat de verschillende attributen inhouden). Ook de plug-in van jgoodies met de formdesigner gebruik ik liever niet omdat je dan ook weer met gegenereerde stukken code werkt.
[ Voor 16% gewijzigd door Verwijderd op 17-05-2007 18:38 . Reden: onsamenhangend verhaal :P ]