java - 如何保持 JTabe 窗口的焦点直到用户响应?

标签 java swing jtable jframe

我想避免执行其余的代码,直到用户响应 jtable(等到他取消它以显示 JOptionPane

import java.awt.*;

import javax.swing.*;

public class test {

public static void main(String args[]) {

String[][] rows = { { "Sameendra", "MCA","sam", "Old" }, { "vinod", "M.ED","sam", "Old" }, { "Suman", "BIT","sam", "Old" }, { "Amit", "Msc","sam", "Old" }, {"Deepak", "BIT","sam", "Old"}, { "Ravi", "MCA","sam", "Old" },// { "Sameendra", "MCA","sam", "Old" }, { "vinod", "M.ED","sam", "Old" }, };
};

    String headers[] = { "Upper", "Lower", "New", "Old" };
    JTable table = new JTable(rows, headers);
    table.setEnabled(true);



    JScrollPane scrollPane = new JScrollPane(table);
    JFrame frame = new JFrame("New Table");


    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.add(scrollPane, BorderLayout.CENTER);
    frame.setLocationRelativeTo(frame);
    frame.setLocation(500,325);
    frame.setSize(300, 168);
    frame.setVisible(true);
    frame.setFocusable(true);
    JOptionPane.showMessageDialog(null, "Goback?", "return",   

    JOptionPane.INFORMATION_MESSAGE);

最佳答案

请记住,大多数 GUI 都是事件驱动的环境,这意味着屏幕上可以同时显示多个窗口和控件,并且用户可以选择他们想要执行的操作。

如果您想停止代码执行直到用户关闭窗口,那么您需要使用某种模式对话框。这将在对话框可见时停止执行代码,并在对话框关闭后继续执行。

您可以使用 JDialog 代替使用 JFrame,或者更简单地使用 JOptionPane,将 JTable 作为消息对象传递。

看看How to use dialogs了解更多详情和 How do i make the output come in different columns?例如...

关于java - 如何保持 JTabe 窗口的焦点直到用户响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20391598/

相关文章:

java - 如何在 Eclipse 中为 Android 程序传递 JVM 参数?

java - Apache Camel : errorHandler vs onException?

java - 实现 ArrayLists 到 Table 模型

java - 刷新按钮不刷新 jtable

java - JApplet 上的分层对象(扩展 JComponet)

java - JTable 在列表中获取错误值

java赋值不知道是什么错误

java - 写入扩展数组

java - 悬停时图像变化 Java

java - 监听 JTextArea 按下的按键