Accessible Zellen in JTables

Viper28

Mitglied
Hi,
ich hätte ein Problem:
Wie kann ich einzelne Zellen in einer JTable accessible machen, ihnen also einen AccessibleName zuweisen?
Ich möchte dass bei jeder Zelle einer Spalte einen Accessible Namen vergeben kann. Bei JLabel, JTextfield, usw. funktioniert dass ja über z.b.
Java:
JLabel.getAccessibleContext().SetAccessbileName("Text");[/Java] aber bei Tabellen kann man nur für die Tabelle selbst einen Accessible Namen vergeben, der dann allerdings nicht von einem ScreenReader vorgelesen wird.
 

faetzminator

Gesperrter Benutzer
Zumindest in SWT kann man in Tables auch Labels etc. adden, was wohl auch in Swing gehen wird. Setze also einfach ein JLabel in das Tabellenfeld und setze dort die gewünschten Werte.
 

Viper28

Mitglied
Hab des jetzt ausprobiert, aber der ScreenReader liest mir nur die Inhalte der Tabelle vor und nicht den Accessible Namen
Java:
for(int i = 0; i < 5; i++)
        {
            for(int j = 0; j < 5; j++)
            {
                jl[i][j] = new JLabel(dat[i][j]);
                jl[i][j].getAccessibleContext().setAccessibleName("Spalte");
                jl[i][j].getAccessibleContext().setAccessibleDescription("Zeile");
            }
        }
tabelle = new JTable(jl, columnNames);
Sowohl dat als auch columnNames sind String-Arrays
 
Zuletzt bearbeitet:

Michael...

Top Contributor
Eine JTable besteht nicht aus mehreren Komponenten, was in der JTable angezeigt wird ist nur ein Bild.
Standardmässig verwendet JTable ein JLabel mit dessen Hilfe die Zellen gerendert werden.
Daher kann man auch nicht einzelnen Zellen einen AccessibleContext zu weisen,
das könnte man bei den Objekten machen die im TableModel stecken.

Aber was hast Du eigentlich vor? Warum willst Du "Zellen" einen AccessibleContext zu weisen?
 

Viper28

Mitglied
ich will, dass mein Programm auch für Blinde zugänglich wird und somit muss bei jeder Zelle einer Spalte der Name der Spalte als AccessibleName zugeordnet werden, so dass ein ScreenReader vorliest, was in die Zelle reinkommt... also z.B. bei einer Tabelle mit Vor-, Nachnamen und Alter soll bei allen Zellen der ersten Spalte vorgelesen werden dass da der Vorname reinkommt.
 

Michael...

Top Contributor
Muss ich leider passen, da ich keine Ahnung habe wie so ein ScreenReader vorgeht.
Aber wie gesagt, den Zellen kannst Du keinen AccessibleContext zu weisen.
 

faetzminator

Gesperrter Benutzer
Muss ich leider passen, da ich keine Ahnung habe wie so ein ScreenReader vorgeht.
Aber wie gesagt, den Zellen kannst Du keinen AccessibleContext zu weisen.

Wie gesagt, zumindest in SWT kann man GUI Komponenten in eine Tabelle schmeissen. Irgendwie muss man z.B. Checkboxen in Rows oder Buttons für Detailansichten einfügen können - kann man in Swing doch sicher auch?
 

Michael...

Top Contributor
Die JTable benutzt Renderer- und Editorkomponenten. Sicherlicher kann man da ComboBoxen, CheckBoxen, Buttons... (was auch immer man will) in den Zellen darstellen, aber das ist nur eine Darstellung/ Abbildung. Hätte erwartet, dass das bei SWT genauso ist, sonst muss die VM je nach Umfang der Tabelle zusätzlich zu den Datenobjekten mit der gleichen Menge an "graphischen" Objekten umgehen.
 

Viper28

Mitglied
Okay... dann scheints mit ner JTable wirklich nicht zu funktionieren :-/ ... dann werd ich versuchen das Problem zu umgehen und auf ne Combobox o.Ä. ausweichen
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
W junit.Test not accessible? Java Basics - Anfänger-Themen 4
nbergmann The type JOptionPane is not accessible. Java Basics - Anfänger-Themen 4
J Datentypen CSV to DB Leere Zellen in CSV mit Inhalt? Java Basics - Anfänger-Themen 11
G JTable: mehrzeilige Zellen erstellen Java Basics - Anfänger-Themen 2
N JTable - Zellfarben ändern, GUI-Komponenten in Zellen einfügen Java Basics - Anfänger-Themen 5
J Zellen verbinden in JTable Ueberschrift Java Basics - Anfänger-Themen 3
C Zellen in einer JTable nicht anzeigen lassen Java Basics - Anfänger-Themen 3
T Formatieren von Zellen einer PdfPTable mit IText Java Basics - Anfänger-Themen 3
J Winzige Frage bezüglich leeren Zellen (HSSF) Java Basics - Anfänger-Themen 14
G POI: Anzahl der Zellen einer Zeile holen Java Basics - Anfänger-Themen 2
S JTable--Beschreiben der Zellen durch Doppelklick verhindern Java Basics - Anfänger-Themen 4
M JTable sortieren ohne Berücksichtigung der leeren Zellen Java Basics - Anfänger-Themen 3
P Prüfen ob alle zellen der tabelle leer sind Java Basics - Anfänger-Themen 9
O JTable Zellen editieren abschalten Java Basics - Anfänger-Themen 2
B Einzelne Zellen in JTable markieren Java Basics - Anfänger-Themen 2
G Jtable mit bombobox in zellen Java Basics - Anfänger-Themen 7
J POI: Leere Excel Zellen Java Basics - Anfänger-Themen 3
E Schreiben in Excel -Zellen farbig darstellen Java Basics - Anfänger-Themen 4
G Zellen wie bei Excel? Java Basics - Anfänger-Themen 2
C JTable Zellen Ränder entfernen Java Basics - Anfänger-Themen 2
M JTable Zellen für User sperren Java Basics - Anfänger-Themen 4
M JTable Zellen in AWT Text Java Basics - Anfänger-Themen 11
M Best Practice Verschieben einzelner Spalten eines JTables verhindern Java Basics - Anfänger-Themen 5
J 2 JTables zusammenhängend füllen Java Basics - Anfänger-Themen 3
D JTables eine Zeile adden Java Basics - Anfänger-Themen 10
Z Drucken eines JTables mit Text drüber Java Basics - Anfänger-Themen 6
M Aktualisieren eines JTables funktioniert nicht Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben