我正在尝试使JTextField的背景透明,这样它下面的JLabel仍然可见,但每当在JTextField中输入文本时,您都可以看到文本.这就是我现在基本上所拥有的.
JTextField背景在下图中设置为黑色.
理论上,如果JTextField的背景是透明的,它应该是这样的.
所以,我的问题是如何让JTextField的背景透明化?
解决方法:
这个例子很简单,使用setOpaque(false).标签文本始终可见.我用Java 1.7和1.8测试了它.因此,如果它对您不起作用,您还做了什么,以使您的框架初始化?
public class TextField extends javax.swing.JFrame {
public TextField() {
initComponents();
}
//
private void initComponents() {
jLabel1 = new javax.swing.JLabel();
jTextField1 = new javax.swing.JTextField();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
getContentPane().setLayout(null);
jLabel1.setText("Test");
getContentPane().add(jLabel1);
jLabel1.setBounds(60, 40, 70, 14);
jTextField1.setText("jTextField1");
jTextField1.setOpaque(false);
getContentPane().add(jTextField1);
jTextField1.setBounds(50, 30, 90, 40);
pack();
}//
public static void main(String args[]) {
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new TextField().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JLabel jLabel1;
private javax.swing.JTextField jTextField1;
// End of variables declaration
}
标签:java,swing,jtextfield
来源: https://codeday.me/bug/20190624/1279436.html