相关疑难解决方法(0)

如何在另一个JFrame运行时暂停JFrame

我正在制作一个带有数据库的服务器,但是当我正在加载主JFrame时,当我连接到数据库时,从.properties文件中读取用户名和密码,我选择让用户知道程序正在运行,该程序在特定时刻正在做什么,并且如果它不存在(首次启动),也让他创建一个.properties文件.问题是我需要创建2个jframe,1个显示启动进度,1个只在用户需要创建.properties文件时出现:问题是我必须在第二个运行时暂停第一个,并在第二个关闭时重新开始运行第一个执行所有操作; 我用两种方式制作它,但它不起作用:首先,我尝试插入一个wait()调用,打开第二个JFrame和一个notify()调用,同时关闭它; 第二,我尝试使用线程,但问题是我停止的线程不会启动它应该...这里是一些代码:

jFrame1.setBounds(0,0,500,500);
    this.setVisible(true);
    jProgressBar2.setValue(0);
    prop = new Properties();
    jTextArea1.setText(jTextArea1.getText()+"Searching file config.properties... \n");
    try {
        FileReader fr = new FileReader("config.properties");
        jProgressBar2.setValue(33);
        jLabel3.setText("33");
        jTextArea1.setText(jTextArea1.getText()+"File config.properties found... \n");
    } catch (FileNotFoundException ex) {
        jFrame1.setVisible(true);
        jTextArea1.setText(jTextArea1.getText()+"File config.properties not found... \n");
    }
Run Code Online (Sandbox Code Playgroud)

当我进入"捕获"部分时我想暂停; "这个"是第一个JFrame,"jFrame1"是第二个.一些提示/提示?

java swing multithreading jframe wait

0
推荐指数
1
解决办法
770
查看次数

第二个JFrame首先关闭

两个JFrame,

JFrame Main; // Main JFrame

JFrame Sub; //Second JFrame that is initialized from within Main via a JMenuItems ActionListener.

mainMenuItem.setActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent arg0) {
        try{
            Sub subFrame = new Sub();
            subFrame.setVisible(true);
        }catch(Exception e){}
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

问题是每当我关闭第二个JFrame(Sub)时它会关闭第一个JFrame(Sub).

两者JFrame都有:

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Run Code Online (Sandbox Code Playgroud)

这是问题的一部分吗?

java swing jframe

0
推荐指数
1
解决办法
183
查看次数

如何重新使用jframe而不使其成为新的?

我想知道是否有办法重用一个jframe而不是新的.你可能想知道为什么.我有两个JFrame(实际上更多,但为了这个问题的目的,两个).一个包含一个单选按钮(同意)与jtextarea中的条款和条件.其他JFrame包含passwordtxtarea(密码),jtextarea(用户名)和单选按钮(阅读条款和条件),以及"TermsAnd Conditions"按钮.我忘了提到第一个jtextarea包含一个"后退"jbutton,如果我按下,我得到JFrame2,当我按"条款和条件"时,我得到JFrame1.问题是,我的代码需要点击"同意"和"阅读条款"单选按钮,但每当我按"后退"或"条款和条件"时,我输入的任何输入(用户名,密码,点击默认值以外的单选按钮)将丢失.因此,我不能继续我的计划.

我认为这与我必须制作一个新的JFrame表格有关.也许它将它恢复到默认状态?无论如何,我该如何解决这个问题?我没有看到这样的问题,所以除了"这是不可能的"之外,还有一个我无法看到的明显答案吗?

java swing netbeans jframe

0
推荐指数
1
解决办法
919
查看次数

Java Swing JFrame为游戏推出了另一个JFrame

我正在使用Java开发一个小游戏.我的应用程序有一个主JFrame,可以通过单击JButton创建另一个Window(游戏窗口).我已经单独测试了我的游戏窗口,一切都很好.

这是我的游戏窗口构造函数:

public GameWindow(final GameController controller)
{
    super("Boulder Dash Game");

    this.controller = controller;
    this.controller.registerObserver(getCurrentFrame()); 
    this.gamePanel = new GamePanel(controller);

    this.frameWidth = controller.getColumns() * 16;
    this.frameHeight = controller.getRows() * 16 + 76;

    getContentPane().add(gamePanel, BorderLayout.CENTER);

    setSize(frameWidth, frameHeight);
    setResizable(false);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setVisible(true);
    controller.startGame();
}
Run Code Online (Sandbox Code Playgroud)

controller.startGame()方法启动游戏循环.当我直接从我的主要开始这个窗口时,游戏循环工作正常.

现在,我想从我的主框架启动这个GameWindow框架.这是我的主框架中的代码:

playButton.addActionListener(new ActionListener() {
    @Override
    public void actionPerformed(final @Nullable ActionEvent e)
    {
        String selectedItem = (String) levelsComboBox.getSelectedItem();
        assert selectedItem != null;
        controller.lauchGame(selectedItem);
    }
});
Run Code Online (Sandbox Code Playgroud)

controller.launchGame(String selectedItem)是一种用于加载游戏关卡并启动游戏窗口的方法.这是代码

public void lauchGame(final String levelQueried)
{
    assert levelQueried != null;
    Level level = LevelRepository.load(levelQueried); …
Run Code Online (Sandbox Code Playgroud)

java swing event-dispatch-thread

0
推荐指数
1
解决办法
261
查看次数

使用GridBagLayout使用按钮填充框架

我正在尝试使用附加到每个按钮的图标来构建匹配游戏.虽然这还没有完成,但我在用按钮填充面板时遇到了问题.

使用此代码,我得到一个灰色的框架.如果我注释掉我在"// execution"下使用的3种方法,那么面板将全部为黑色(这就是我如何测试按钮是否填充空间.)

对于某些原因,我的按钮没有填充到面板上.
我需要一些帮助!!!我哪里错了?

import java.awt.Color;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class MemoryMainFrame extends JFrame implements ActionListener {

    JButton button[] = new JButton[16];
    private static final int SIXTEEN_BUTTONS = 16;
    JPanel mainPanel = new JPanel();
    double dim = Math.sqrt(SIXTEEN_BUTTONS);
    int numOfColumns = (int) (dim);
    int numOfRows = (int) (dim);

    public static void main(String[] args) {
        new MemoryMainFrame();
    }

    public MemoryMainFrame() {

        this.setTitle("MemoryGame!!!");
        this.setSize(400, 400);
        this.setLocationRelativeTo(null);
        this.setDefaultCloseOperation(EXIT_ON_CLOSE);
        this.setVisible(true); …
Run Code Online (Sandbox Code Playgroud)

java swing jpanel jframe jbutton

0
推荐指数
1
解决办法
305
查看次数

为新的 JFrame 创建新线程

我正在学习线程,但遇到了问题。我正在尝试制作 2 个框架,一个是主框架,另一个将在单击按钮后显示。我想在新框架运行时停止主框架。你们能帮我举一个非常简单的例子吗?(单击按钮后,新框架也将关闭)。只需 2 个带有按钮的框架就足够了。非常感激!

java swing multithreading

0
推荐指数
1
解决办法
1420
查看次数

获取哪个Jframe打开另一个Jframe

说我有一个JFramechildJframe.

如果我从两个不同的JFrames 创建一个新的childJFrame .如何获取创建childJFrame的特定JFrame.

从而:

public class myPage1 extends javax.swing.JFrame{
    // on a Button clicked
    childJFrame cjf = new childJFrame();
    cjf.setVisible(true);
}
Run Code Online (Sandbox Code Playgroud)

而第二课是

public class myPage2 extends javax.swing.JFrame{
    // on a Button clicked
    childJFrame cjf = new childJFrame();
    cjf.setVisible(true);
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能知道是否cjfmyPage1或的实例myPage2

java user-interface swing jframe

0
推荐指数
1
解决办法
55
查看次数

等待从JFrame 2返回以继续在JFrame 1中执行一些语句

假设我有2个JFrame(A)和(B)

框架(A)发射框架(B),如下所示

line 1: private void fun1()
line 2: {
line 3:      new B();
line 4:      Do something
line 5: }
Run Code Online (Sandbox Code Playgroud)

在第3行我激活帧B ..我不想去第4行,直到我从JFrame(B)转回来,因为根据框架(B)中的一些动作我做了这样的动作

new (B);
container.add(JPanel);
Run Code Online (Sandbox Code Playgroud)

container.add(JPanel); - >依赖于从JFrame(B)触发的标志

java swing jframe

-1
推荐指数
1
解决办法
415
查看次数

使用Timer而不使用任何按钮从另一个JFrame调用

使用Timer在没有任何按钮的情况下从另一个调用一个JFrame:时间减少然后打开另一个没有任何按钮的JFrame.请帮忙.用于netbeans

java swing multithreading jframe

-1
推荐指数
1
解决办法
3056
查看次数

关于JFrame的核心Java项目

我在做,其中有连接在一起3张,说一个小的Java项目f1,f2,f3f4.f1有一个按钮,然后点击它调用f2,f2并有按钮调用f3.问题是如果我逐个打开所有表单然后关闭表单f2f3然后主窗体(f1)关闭.

我想要即使我关闭形式f2,f3我的主要形式也不应该关闭,直到我亲自关闭它.

package mnm;

public class NewJFrame extends javax.swing.JFrame {


    public NewJFrame() {
        initComponents();
    }

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {

        NewJFrame1 nb=new NewJFrame1();
        nb.setVisible(true);
    }


    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {
                new NewJFrame().setVisible(true);
                NewJFrame gn=new NewJFrame();
                gn.setDefaultCloseOperation(NewJFrame.DISPOSE_ON_CLOSE);
            }
        });
    }

    private javax.swing.JButton jButton1;

}
Run Code Online (Sandbox Code Playgroud)

java swing netbeans frame jframe

-1
推荐指数
1
解决办法
833
查看次数