我正在使用標準JTable和標準單元格編輯器來編輯字符串值。 在某些平臺上,當單元格編輯器打開時,文本不適合並且部分文本被剪切。例如,「_」符號不可見,以及由於符號的上部可能被切割,因此很難使「l」和「1」變成「d」。JTable - 單元格編輯器不夠高,不適合文本
也許我應該增加細胞高度,但多少?
結果非常依賴於當前Look &下跌,例如在Windows上一切都可能沒事,但是在Linux上描述的效果會出現。
我正在使用標準JTable和標準單元格編輯器來編輯字符串值。 在某些平臺上,當單元格編輯器打開時,文本不適合並且部分文本被剪切。例如,「_」符號不可見,以及由於符號的上部可能被切割,因此很難使「l」和「1」變成「d」。JTable - 單元格編輯器不夠高,不適合文本
也許我應該增加細胞高度,但多少?
結果非常依賴於當前Look &下跌,例如在Windows上一切都可能沒事,但是在Linux上描述的效果會出現。
您可以使用表的字體高度計算行高。
FontMetrics metrics = table.getFontMetrics();
int fontHeight = metrics.getHeight();
table.setRowHeight(fontHeight + delta);
三角洲可以是任何你舒服,你使用的是什麼佈局管理器:)
getFontMetrics應該接受參數,我這樣寫'FontMetrics metrics = table.getFontMetrics(table.getFont());' – javapowered
hm是它可以計算我需要多少「delta」?即多少額外的空間單元格編輯器爲邊界保留? – javapowered
Border.getBorderInsets方法可以幫助你,我想 –
您可以修改單元格編輯器使用的字體。
Font font = new Font("Helvetica", Font.PLAIN, 22);
? –
@javapowered什麼是「標準單元格編輯器」,是否意味着TableCell是可編輯的,沒有別的,或者TableCell裏面有一些JComponent – mKorbel
@Hovercraft - 它是LayoutManager與之無關的少數幾件事之一:-) – kleopatra