Swing/ButtonPainted のバックアップソース(No.7)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- バックアップ を表示
- Swing/ButtonPainted へ行く。
- 1 (2010-12-13 (月) 00:08:28)
- 2 (2011-04-27 (水) 19:19:50)
- 3 (2011-12-16 (金) 15:04:52)
- 4 (2013-01-06 (日) 21:37:52)
- 5 (2014-11-17 (月) 18:56:58)
- 6 (2015-01-27 (火) 17:02:35)
- 7 (2015-03-09 (月) 14:46:02)
- 8 (2015-03-16 (月) 17:52:38)
- 9 (2017-02-10 (金) 15:05:57)
- 10 (2017-12-24 (日) 15:11:51)
- 11 (2019-12-08 (日) 15:33:05)
- 12 (2021-06-09 (水) 18:10:54)
--- title: JButtonの描画 tags: [JButton, Focus, Icon] author: aterai pubdate: 2009-08-24T12:58:07+09:00 description: JButtonの設定を変更し、コンテンツ領域、フチ、フォーカスやロールオーバー状態がどう描画されるかをテストします。 --- * 概要 [#b1486d31] `JButton`の設定を変更し、コンテンツ領域、フチ、フォーカスやロールオーバー状態がどう描画されるかをテストします。 #download(https://lh3.googleusercontent.com/_9Z4BYR88imo/TQTIWYXt9eI/AAAAAAAAASo/se2OKkQA83U/s800/ButtonPainted.png) * サンプルコード [#l599c4e7] #code(link){{ List<JCheckBox> clist = Arrays.asList( new JCheckBox(new AbstractAction("setFocusPainted") { @Override public void actionPerformed(ActionEvent e) { boolean flg = ((JCheckBox) e.getSource()).isSelected(); for (JButton b: list) { b.setFocusPainted(flg); } p.revalidate(); } }), new JCheckBox(new AbstractAction("setBorderPainted") { @Override public void actionPerformed(ActionEvent e) { boolean flg = ((JCheckBox) e.getSource()).isSelected(); for (JButton b: list) { b.setBorderPainted(flg); } p.revalidate(); } }), new JCheckBox(new AbstractAction("setContentAreaFilled") { @Override public void actionPerformed(ActionEvent e) { boolean flg = ((JCheckBox) e.getSource()).isSelected(); for (JButton b: list) { b.setContentAreaFilled(flg); } p.revalidate(); } }), new JCheckBox(new AbstractAction("setRolloverEnabled") { @Override public void actionPerformed(ActionEvent e) { boolean flg = ((JCheckBox) e.getSource()).isSelected(); for (JButton b: list) { b.setRolloverEnabled(flg); } p.revalidate(); } }) ); }} * 解説 [#ua38e7ee] 上記のサンプルでは、`JButton`の状態(例えばフォーカスの有無を描画するか?など)をテストします。これらは`Look & Feel`によって効果が異なる場合があります。 - [https://docs.oracle.com/javase/jp/8/api/javax/swing/AbstractButton.html#setFocusPainted-boolean- setFocusPainted] -- フォーカス状態を描画するか? - [https://docs.oracle.com/javase/jp/8/api/javax/swing/AbstractButton.html#setBorderPainted-boolean- setBorderPainted] -- ボーダー(フチの装飾)を描画するか? - [https://docs.oracle.com/javase/jp/8/api/javax/swing/AbstractButton.html#setContentAreaFilled-boolean- setContentAreaFilled] -- ボタンのコンテンツ領域(ボタンのテキストやアイコン以外の領域)を描画するか? - [https://docs.oracle.com/javase/jp/8/api/javax/swing/AbstractButton.html#setRolloverEnabled-boolean- setRolloverEnabled] -- ロールオーバー効果を描画するか? //* 参考リンク * コメント [#u75fef0a] #comment #comment