[英]Preventing Pop-Up Menu of JComboBox from Closing in Java
我希望防止彈出窗口關閉以響應焦點轉移。
附上一個代碼示例。 我的目標是能夠展開組合框下拉菜單,然后選擇文本字段,不要讓下拉菜單消失。 這可能嗎?
import java.awt.BorderLayout;
import javax.swing.JComboBox;
import javax.swing.JDialog;
import javax.swing.JTextField;
public class ComboBoxPopupTest
{
public static void main( String[] args )
{
new ComboBoxPopupTest();
}
public ComboBoxPopupTest()
{
MyDialog dialog = new MyDialog();
dialog.setVisible( true );
MyComboBoxDialog window = new MyComboBoxDialog();
window.setVisible( true );
}
private class MyDialog extends JDialog
{
public MyDialog()
{
setLayout( new BorderLayout() );
JTextField textField = new JTextField("Text Field");
textField.putClientProperty( "doNotCancelPopup", Boolean.TRUE ); // FIXME: I Don't prevent the pop-up from closing!
add( textField, BorderLayout.CENTER );
setSize( 400, 400 );
}
}
private class MyComboBoxDialog extends JDialog
{
public MyComboBoxDialog()
{
setLayout( new BorderLayout() );
add( new JComboBox( new String[]{"String1", "String2", "String3"} ), BorderLayout.CENTER );
setSize( 400, 400 );
}
}
}
我的黑客解決方案最終是讓另一個容器完全不可聚焦。 作為一般解決方案,這是不可接受的,但我會接受它作為答案,除非有人有更好的東西。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.