Die Darstellung von Bildern aus Datenbanken ist zwar denkbar einfach doch die Umsetzung im UI bereitet immer wieder Probleme und vor allem wiederholten Aufwand.
Mit JVx wird der Aufwand auf ein Minimum reduziert. Die Bilddaten werden in Tabellen, Auswahllisten oder Formularen dargestellt und dafür benötigt man im Normalfall nicht mehr als 3 Zeilen Code.
In der Datenbank speichern wir zu einem Benutzer ein Profil Foto in binärem Format. An anderer Stelle speichern wir einen Bildpfad (z.B.: /com/sibvisions/apps/packung/images/flag/austria.png). Beide Inhalte sollem im UI als Bild dargestellt werden. Die Definition des Bildpfad setzt voraus, daß das Bild im classpath enthalten ist. Wenn das nicht der Fall ist wird ein Standard Bild angezeigt!
Nun der versprochene “3 Zeiler”:
//create the image viewer UIImageViewer ivProfile = new UIImageViewer(); ivProfile.setDefaultImageName(NO_IMAGE); //set the image viewer als cell editor rdbPerson.getRowDefinition().getColumnDefinition("IMAGE").getDataType(). setCellEditor(imageViewer);
Alle Controls die auf IMAGE verweisen stellen das gespeicherte Bild bzw. Standard Bild NO_IMAGE dar, z.B. UITable, UIEditor, usw.