title image


Smiley java.accessibility nutzen, um an Wert einer Komponente zu kommen?
Ich habe nach einem Weg gesucht, um Swing-Elemente auf einen Nenner zu reduzieren und kategorisieren. Sinn soll sein, dass ich in der Lage bin, bei einem Component-Objekt herauszufinden, über welche Methoden ich an deren Wert komme.

Beispiel:



JTextArea, JTextField, JLabel => getText()

JCheckBox => isSelected()



etc.



Dabei geht es mir natürlich nur um die Komponenten, von denen ein einfacher, eindeutiger Wert abfragbar ist (also nicht ViewPort, JTable etc).



Ich bin auf die Accessibility-API aufmerksam geworden, durch die es möglich ist, die Rolle einr Komponente zu erfahren (AccessibleRole). Folgendes ist nun möglich:



public void foo(Component c) // c in diesem Fall eine JTextArea

{

if( c.getaccessibleContext().getAccessibleRole == AccessibleRole.TEXT )

{

// aha! eine textkomponente

}

}



Nun möchte ich auch über diese Interfaces an den (Text)Wert herankommen und nicht per trial&error in die konkrete Klasse casten. Seltsamerweise bietet aber das gesamte Paket keine Möglichkeit, bsp. ein getText() oder getValue() aufzurufen.



Selbst die Klasse AccessibleText bietet alles(!) nur das nicht..



Weiß jemand, wie ich dennoch an den Wert komme?
Nekromant


geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: