我有一个JTextField,在那里我已经设置了自定义属性:如何保持一个JComponent,重头戏边界时,自定义边框设置
nameField.setPreferredSize(new Dimension(275,40));
nameField.setBackground(bgColor);
nameField.setForeground(txtColor);
nameField.setFont(new Font("HelveticaNeue",Font.PLAIN,22));
nameField.setBorder(BorderFactory.createLineBorder(Color.WHITE, 2));
当组件具有焦点,就没有出亮点在场地周围。在Mac上,它通常是一个蓝色的发光矩形,表示该组件具有焦点。
如果我注释掉nameField.setBorder(...),高亮显示重新出现。我如何保持亮点,还有我的自定义边框!?
基本上,我只想让高光边框在组件有焦点时显示,而在组件未聚焦时没有边框。
请注意,原始边框的类型为com.apple.laf.AquaTextFieldBorder
。
这两个答案在某种程度上都起作用。但有一个问题。原始边框似乎是一个复合边框,突出显示为外边框,内部为1px的白色边框。我不想要内在的边界! 注意:我在OS X上,原始边框的类型实际上是com.apple.laf.AquaTextFieldBorder – 2010-06-07 20:08:07