PDA

View Full Version : 2 Fragen: SQL & Swing



will_i
29-07-03, 17:00
Hallo zusammen,

vielleicht könnt ihr mir helfen, ich hab bei der Umsetzung unserer RPG Anwendung in Java ein paar kleine Probleme:

1.) SQL Spaltenüberschriften
Ich hol mir über JDBC die Daten und die Metadaten einer DB Datei und stell die in eine Tabelle. Entgegen meiner Erwartungen bekomme ich sowohl bei der Methode getColumnName(int) als auch bei getColumnLabel(int) nur den Feldnamen zurück und nicht den Wert der in COLHDG im DDS steht. Ist das nicht vorgesehen oder mach ich was falsch? Der Rest funktioniert.

2.) Swing und das Menü
Die Menübereiche unserer RPG Anwendung sind in einer DB Datei abgelegt und werden dynamisch in die Java Klasse eingefügt. Das funktioniert alles, aber bei manchen Anwendungen sind es einfach zuviele Menüs (von den Menüitems wollen wir mal nicht reden), so daß in der Java Klasse zwar alle Menüs vorhanden sind, aber man kann sie nicht mehr unterscheiden, da alle in einer Reihe stehen und entsprechend verkleinert werden.
Gibt es da Möglichkeiten, das Menü mehrzeilig zu gestalten oder zumindest scrollbar zu machen? Die Methode setAutoScrolls(true) in JMenuBar hilft bei mir nicht.

Vielen Dank für eure Hilfe

Will_i

Fuerchau
29-07-03, 17:31
zu 1: getColumnLabel(int) liefert die TEXT-Beschreibung der Spalte

torsten
31-07-03, 08:26
- getColumnLabel liefert bei mir leider auch immer nur den Feldnamen, auch
wenn extended Metadatata auf true steht,
das scheint noch ein Bug zu sein.

- für die Menüstruktur bieten sich subMenus an, das JMenutItem ist dann
ein neues JMenu das mit .add dem 1. JMenu zugefügt wird (und dann seitlich aufklappt). Die Strukturtiefe ist beliebig.

Torsten

will_i
31-07-03, 08:37
Hallo,
schönen Dank erstmal für eure Beiträge.

Für die mehrzeilige Java Menüleiste hab ich inzwischen eine Lösung gefunden:

JMenuBar menuBar = new JMenuBar();
// dreizeiliges Layout erzeugen und setzen
menuBar.setLayout(new GirdLayout(3,0));
// Items anfügen ....

Vielen Dank soweit

Will_i

horschma
31-07-03, 14:56
Hallo Will_i,

wenn du in 'glücklichen' Lage bist V5R2 einzusetzen kannst du mit dem Connection-Properity "extended metadata" = "true"
die daten die vom ResultSetMetaData geliefert werden beeinflussen.
Ich hab's noch nnicht getestet, da unter

http://publib.boulder.ibm.com/iseries/v5r2/ic2924/index.htm?info/rzahh/javadoc/JDBCProperties.html

darauf hingewiesen wird das 'Setting this property to true may slow performance because it requires retrieving more information from the server. Leave the property as the default (false) unless you need more specific information from the listed methods.'

Thomas