{"id":1821,"date":"2013-02-24T11:32:36","date_gmt":"2013-02-24T09:32:36","guid":{"rendered":"http:\/\/www.tutego.de\/blog\/javainsel\/?p=1821"},"modified":"2013-02-24T11:37:56","modified_gmt":"2013-02-24T09:37:56","slug":"inselraus-spalteninformationen-von-jtable-tabellen","status":"publish","type":"post","link":"https:\/\/www.tutego.de\/blog\/javainsel\/2013\/02\/inselraus-spalteninformationen-von-jtable-tabellen\/","title":{"rendered":"Inselraus: Spalteninformationen von JTable-Tabellen"},"content":{"rendered":"<p>Alle Zelleninformationen der Tabelle stecken im Model einer JTable. Informationen \u00fcber die Spalten stehen allerdings nicht im TableModel, sondern in Objekten vom Typ TableColumn. Jede Spalte bekommt ein eigenes TableColumn-Objekt, und eine Sammlung der Objekte bildet das TableColumnModel, das wie das TableModel ein Datencontainer der JTable ist.<\/p>\n<p><strong>Beispiel<\/strong>: Z\u00e4hle alle TableColumn-Objekte einer JTable table auf.<\/p>\n<pre class=\"brush: java; title: ; notranslate\" title=\"\">\r\nfor ( Enumeration&lt;?&gt; e = table.getColumnModel().getColumns(); e.hasMoreElements(); )\r\n  System.out.println( (TableColumn)e.nextElement() );\r\n<\/pre>\n<p>Vom Spaltenmodell der Tabelle bezieht getColumns()eine Enumeration von TableColumn-Objekten. Soll ein ganz bestimmtes TableColumn-Objekt untersucht werden, kann auch die Methode getColumn(Object identifier) genutzt werden.<\/p>\n<p>Liegt ein TableColumn-Objekt vor, l\u00e4sst sich von diesem die aktuelle minimale und maximale Breite setzen.<\/p>\n<p><strong>Beispiel<\/strong>: \u00c4ndere die Breite der ersten Spalte auf 100 Pixel:<\/p>\n<pre class=\"brush: java; title: ; notranslate\" title=\"\">\r\ntable.getColumnModel().getColumn( 0 ).setPreferredWidth( 100 );\r\n<\/pre>\n<p>AUTO_RESIZE<\/p>\n<p>Ver\u00e4ndert der Anwender die Breite einer Spalte, \u00e4ndert er entweder die Gesamtbreite einer Tabelle, oder er \u00e4ndert automatisch die Breite der anderen Spalten, um die Gesamtbreite nicht zu ver\u00e4ndern. Hier gibt es f\u00fcr die JTable unterschiedliche M\u00f6glichkeiten, die eine Methode setAutoResizeMode(int mode) bestimmt. Erlaubte Modi sind Konstanten aus JTable und AUTO_RESIZE_OFF, AUTO_RESIZE_NEXT_COLUMN, AUTO_RESIZE_SUBSEQUENT_COLUMNS, AUTO_RESIZE_ LAST_COLUMN, AUTO_RESIZE_ALL_COLUMNS. Sinnvoll sind drei von ihnen:<\/p>\n<ul>\n<li>AUTO_RESIZE_SUBSEQUENT_COLUMNS: Der Standard. Ver\u00e4ndert gleichm\u00e4\u00dfig die Breiten aller rechts liegenden Spalten.<\/li>\n<li>AUTO_RESIZE_NEXT_COLUMN: \u00c4ndert nur die Breite der nachfolgenden Spalte.<\/li>\n<li>AUTO_RESIZE_OFF: \u00c4ndert die Gr\u00f6\u00dfe der gesamten Tabelle. Ist nur sinnvoll, wenn die JTable in einer JScrollPane liegt.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Alle Zelleninformationen der Tabelle stecken im Model einer JTable. Informationen \u00fcber die Spalten stehen allerdings nicht im TableModel, sondern in Objekten vom Typ TableColumn. Jede Spalte bekommt ein eigenes TableColumn-Objekt, und eine Sammlung der Objekte bildet das TableColumnModel, das wie das TableModel ein Datencontainer der JTable ist. Beispiel: Z\u00e4hle alle TableColumn-Objekte einer JTable table auf. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","_links_to":"","_links_to_target":""},"categories":[10],"tags":[],"class_list":["post-1821","post","type-post","status-publish","format-standard","hentry","category-swing"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts\/1821","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/comments?post=1821"}],"version-history":[{"count":3,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts\/1821\/revisions"}],"predecessor-version":[{"id":1824,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts\/1821\/revisions\/1824"}],"wp:attachment":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/media?parent=1821"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/categories?post=1821"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/tags?post=1821"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}