リンゴのルック アンド フィールを使用してボタンの色を設定する方法を知りたいです (たとえば、すべてのコンポーネントの色を設定する必要があります)。
標準のルック アンド フィールに変更することを提案する回答がstackoverflowで見つかりました。
解決策はありますか?色付きのボタンがあり、特定のスタイルや画像を背景として使用するJavaで書かれた多くのアプリを見たので、それがあることを知っています.
解決策を教えていただけますか?
リンゴのルック アンド フィールを使用してボタンの色を設定する方法を知りたいです (たとえば、すべてのコンポーネントの色を設定する必要があります)。
標準のルック アンド フィールに変更することを提案する回答がstackoverflowで見つかりました。
解決策はありますか?色付きのボタンがあり、特定のスタイルや画像を背景として使用するJavaで書かれた多くのアプリを見たので、それがあることを知っています.
解決策を教えていただけますか?
Jbutton クラスを拡張し、repaint() メソッドをオーバーライドして setBackground(COLOR.ORANGE) を呼び出し、ボタンの色を変更します。
このクラスを使用して、すべてのボタンを作成します。特定のボタンの色を変更したい場合は、その特定のボタンで setBackground(COLOR.ORANGE) メソッドを呼び出します。お役に立てれば。以下のコードを見てください
package solutions;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.InputVerifier;
import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
public class VerifierTest extends JFrame {
private static final long serialVersionUID = 1L;
public VerifierTest() {
final JTextField tf = new JTextField("TextField1");
getContentPane().add(tf, BorderLayout.NORTH);
tf.setInputVerifier(new PassVerifier());
final JTextField tf2 = new JTextField("TextField2");
getContentPane().add(tf2, BorderLayout.SOUTH);
tf2.setInputVerifier(new PassVerifier());
final JButton b = new JButton("Button");
b.setBackground(Color.ORANGE);
b.setVerifyInputWhenFocusTarget(true);
getContentPane().add(b, BorderLayout.EAST);
b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if (!tf.getInputVerifier().verify(tf)) {
JOptionPane.showMessageDialog(tf.getParent(), "illegal value: " + tf.getText(), "Illegal Value",
JOptionPane.ERROR_MESSAGE);
}
if (b.isFocusOwner()) {
System.out.println("Button clicked");
}
}
});
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public static void main(String[] args) {
Frame frame = new VerifierTest();
frame.setSize(400, 200);
frame.setVisible(true);
}
class PassVerifier extends InputVerifier {
@Override
public boolean verify(JComponent input) {
final JTextField tf = (JTextField) input;
String pass = tf.getText();
if (pass.equals("Manish")) {
return true;
} else {
return false;
}
}
}
}
「b.setBackground(Color.ORANGE);」という行にコメントを付けます。そして違いを見てください。