2 alan9101 alan9101 于 2016.03.10 18:56 提问

JAVA JTable 中触发JComboBox导致子窗口会到父窗口后面

各位大神:
本人在JTable中添加了JComboBox控件,通过一个按钮去触发子界面,如果在JTable中触发了JComboBox控件就会导致需要弹出的子窗口不能在最前面一直在父窗口的后面。如果没有去触发JComboBox控件,则弹出的子窗口会在最前面。

代码如下:

JComboBox控件在JTable中添加方式:
JComboBox isJTCombox = new JComboBox()
isJTCombox.addItem("");
isJTCombox.addItem("是");
isJTCombox.addItem("否");
//String[] item = new String[]{"","是","否"};
table.getColumnModel().getColumn(23).setCellEditor(
new DefaultCellEditor(isJTCombox));

JTable生成方式
    tableModel = new DefaultTableModel(obj, tableHeader);
    table = new JTable(tableModel);

按钮JButton生成方式及调用子界面方法
fenButton.addActionListener(this);
public void actionPerformed(ActionEvent arg0) {
if (arg0.getSource() == fenButton) {
Display display = Display.getCurrent();
if (display == null) {
display = Display.getDefault();
}
display.asyncExec(new Runnable() {
@Override
public void run() {
NewDialog dialog = new NewDialog(shell);
dialog.open()
}
});
}
}

    子界面代码(注:子界面必须要继承Dialog)
    public class NewDialog extends Dialog {
            public NewDialog(Shell shell) {
                    super(shell);
            }

            protected Control createDialog(Composite parent) {
                    Composite container1 = (Composite) super.createDialogArea(parent);

            }
    }
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
JTable 表格中添加 JComboBox 控件
Using a Combo Box as an EditorSetting up a combo box as an editor is simple, as the following example shows. The bold line of code sets up the combo box as the editor for a specific column.TableColumn
java之swing中Jtable的动态一列中的每行的Jcombobox显示不一样的数据
我们都知道JTable提供了columnModel可以设置指定的实现了TableCellEditor接口的控件但其实现时是整个列使用同一个cellEditor 例如combobox的celleditor就会导致整个列的combobox中的数据相同,这在条件选择时可以这样,但大多数时候我们需要每一行的combobox中的内容不一样 就是说思路上我们要指定每一样的不一样的combobox才可以实现
JTable小例子,表格中使用JComboBox
import java.awt.BorderLayout; import java.awt.Color; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Vector; import javax.swing.DefaultCellEditor; imp
在JTable中实现添加下拉框组件JComboBox
/** * */ package frame; import javax.swing.JFrame; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.table.DefaultTableModel; import javax.swing.table.TableCellEditor;
iframe 父窗口和子窗口相互的调用方法集锦
一、父窗口调用iframe子窗口方法  1、HTML语法:  2、父窗口调用子窗口:myFrame.window.functionName();  3、子窗品调用父窗口:parent.functionName();  简单地说,也就是在子窗口中调用的变量或函数前加个parent.就行  4、父窗口页面源码:  复制代码代码如下:       function say
swing 子窗口关闭时刷新父窗口
基本原理是这样的: 1、在父类中定义一个刷新父窗口内容的方法; 2、在父窗口中打开子窗口时,将父窗口的实例也传给子窗口; 3、子类中创建一个父类实例的属性,在子类在构造方法中用此属性接受传过来的父类实例; 4、子窗口关闭时,调用父类中的方法,实现对父窗口内容的刷新。 具体代码如下: 父类: 1、父类中写一个刷新方法,我随便写一个: public void showTre
JAVA中子窗口关闭,父窗口也关闭的问题
在编程之中,碰见的一个问题,感觉很简单,但是却由于那点知识的欠缺才会出错。 我碰见的有两种情况子窗口关闭导致父窗口也关闭!下面简单介绍一下。。 一种是常规的,java原装类库引起的最常见的: import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton
Swing JComboBox 动态增加的时候,下拉箭头没显示问题
原来,在动态增加JComboBox 的时候,如果没增加validate()方法 仅仅是使用了 repaint()方法的话,JComboBox的下拉箭头可能会不显示。如: button_2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { comdef
JAVA-SWT如何在Jtable单元格中加入复选框Jcheckbox,Jbutton,JcomboBox
项目用到一个需求就是在Jtable单元格中加复选框Jcheckbox或者Jbutton,在网上终于找到了解决的办法。可惜,加两个Jbutton的问题还没有解决。 先记下如何在如何在Jtable单元格中加复选框Jcheckbox和JComboBox。 第一种:自定义自己的TableModel类。 这种方法核心是需要实现getColumnClass()方法,只要覆盖tablemodel的getC
JTable指定单元格加控件
JTable可以给表格的某一列加入控件,下面方法可以实现try{   TableColumn column = jTable.getColumn(colName);   column.setCellEditor(new DefaultCellEditor(new JComboBox())); }catch(IllegalArgumentException ex){ } 或者TableC