gpt4 book ai didi

Java 1.7 似乎以与其他 Java 版本不同的方式显示 jPanel

转载 作者:太空宇宙 更新时间:2023-11-04 12:11:21 25 4
gpt4 key购买 nike

如果这是一个愚蠢的问题,请原谅我,但我目前正在编写我的第一个 java 程序(我之前使用过其他语言),并且我发现 jPanel 的显示方式有些奇怪

根据我在这里找到的信息,我创建了一个框架,一个主jPanel,然后是2个子jPanel(jPanel1和jPanel2),并且当按下按钮时使用cardlayout从jPanel1更改为jPanel2....按下按钮还会启动一些代码来执行一些操作并更新我在jPanel2上的进度条

在 netbeans 中,我上传了 Java 1.6、1.7 和 1.8 库。如果我选择 1.6 或 1.8 似乎一切正常(如果我在安装了这些 java 版本的机器上运行也是如此)...但是如果我使用 1.7,当我单击按钮时,仅显示 jPanel2 上的组件,并且 jPanel1 中的一些组件仍然可见(jPanel2 中的组件未覆盖的组件)...jPanel2 组件由程序正确更新

一旦程序完成其工作,jPanel2 就会正确显示,而 jPanel1 组件就会从 View 中消失

我已检查以确保 jPanel 设置为不透明。我尝试过从 jPanel1 中删除组件、重绘、验证等,但仍然显示相同的内容。

1.7 中是否存在一些错误,或者我应该采取不同的做法(最有可能的是:))

如果我不运行执行这些操作的程序,那么按钮只会更改 jPanel,那么在任何 Java 版本中一切看起来都正常。

似乎程序正在锁定一些也与 jPanel1 相关的线程,因此只有在程序完成后,jPanel1 才能消失....听起来对吗?....在这种情况下最好的解决方法是什么?

(对长篇文章表示歉意,请视为一个完整的新手)

请求的信息:所以我的按钮代码目前如下所示:

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

jProgressBar1.setValue(0);
jLabelinfo.setText("Working...");
jButtonClose.setEnabled(false);
jPanel1.setVisible(false);


CardLayout card = (CardLayout)mainPanel.getLayout();
card.show(mainPanel, "cardjPanel2");
jPanel2.setFocusable(true);
jPanel2.requestFocus();


//MainFrame. //TODO add your handling code here:
}

当我试图解决这个问题时,我目前已经在 jPanel2 获得焦点时调用了我的程序方法,因此该代码如下所示:

    private void jPanel2FocusGained(java.awt.event.FocusEvent evt) {                                    

runprogram();
}

问题如下:

程序运行时的屏幕1 Screen 1 when the program is run:

当按下OK并显示jPanel2时,程序运行时看起来像这样(程序执行期间进度条正确移动) When OK is pressed and jPanel2 is displayed, it looks like this while the program is running (progress bar moves correctly during program execution):

下面是我的 .java 文件中的代码,它重新创建 jPanel,然后当按下“确定”时,交换到 jPanel2,然后每秒更新进度条。如您所见,按下“确定”后,“确定”和“取消”仍然可见(某些文本字段也是如此)。程序完成后,jPanel2 就会正确显示。

导入 java.awt.;导入 javax.swing.;

/* * 要更改此许可证 header ,请在项目属性中选择许可证 header 。 * 要更改此模板文件,请选择“工具”|“模板 * 并在编辑器中打开模板。 */

/** * *@作者PBETTS */公共(public)类 MainFrame 扩展 javax.swing.JFrame {

public static String agentinforesult;

/**
* Creates new form MainFrame
*/
public MainFrame() {
initComponents();
}

/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

mainPanel = new javax.swing.JPanel();
jPanel1 = new javax.swing.JPanel();
jLabelpmhost = new javax.swing.JLabel();
jLabelvchost = new javax.swing.JLabel();
jLabelarhost = new javax.swing.JLabel();
jLabelmthost = new javax.swing.JLabel();
jTextFieldpmhost = new javax.swing.JTextField();
jTextFieldvchost = new javax.swing.JTextField();
jTextFieldarhost = new javax.swing.JTextField();
jTextFieldmthost = new javax.swing.JTextField();
jButtonOK = new javax.swing.JButton();
jButtonCancel = new javax.swing.JButton();
jLabel1 = new javax.swing.JLabel();
jPanel2 = new javax.swing.JPanel();
jButtonClose = new javax.swing.JButton();
jProgressBar1 = new javax.swing.JProgressBar();
jLabelinfo = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setMinimumSize(new java.awt.Dimension(640, 400));
setResizable(false);
setSize(new java.awt.Dimension(640, 400));
addWindowListener(new java.awt.event.WindowAdapter() {
public void windowActivated(java.awt.event.WindowEvent evt) {
formWindowActivated(evt);
}
public void windowOpened(java.awt.event.WindowEvent evt) {
formWindowOpened(evt);
}
});

mainPanel.setPreferredSize(new java.awt.Dimension(530, 313));
mainPanel.setLayout(new java.awt.CardLayout());

jPanel1.setPreferredSize(new java.awt.Dimension(530, 313));

jLabelpmhost.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
jLabelpmhost.setText("PM Hostname");

jLabelvchost.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
jLabelvchost.setText("vCenter/Hyper-V Hostname");

jLabelarhost.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
jLabelarhost.setText("AR Hostname");

jLabelmthost.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
jLabelmthost.setText("Mid Tier Hostname");

jTextFieldpmhost.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N

jTextFieldvchost.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N

jTextFieldarhost.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
jTextFieldarhost.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jTextFieldarhostActionPerformed(evt);
}
});

jTextFieldmthost.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
jTextFieldmthost.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jTextFieldmthostActionPerformed(evt);
}
});

jButtonOK.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
jButtonOK.setText("OK");
jButtonOK.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButtonOKActionPerformed(evt);
}
});

jButtonCancel.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
jButtonCancel.setText("Cancel");
jButtonCancel.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButtonCancelActionPerformed(evt);
}
});

jLabel1.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
jLabel1.setText("Environment Checker");

javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(15, 15, 15)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(0, 97, Short.MAX_VALUE)
.addComponent(jButtonOK, javax.swing.GroupLayout.PREFERRED_SIZE, 115, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(90, 90, 90)
.addComponent(jButtonCancel, javax.swing.GroupLayout.PREFERRED_SIZE, 115, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(88, 88, 88))
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabelpmhost, javax.swing.GroupLayout.PREFERRED_SIZE, 250, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(jLabelarhost, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabelvchost, javax.swing.GroupLayout.DEFAULT_SIZE, 250, Short.MAX_VALUE)
.addComponent(jLabelmthost, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
.addGap(18, 18, 18)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jTextFieldvchost)
.addComponent(jTextFieldpmhost)
.addComponent(jTextFieldarhost)
.addComponent(jTextFieldmthost))))
.addContainerGap())
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 214, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(168, 168, 168))
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 27, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(22, 22, 22)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabelpmhost)
.addComponent(jTextFieldpmhost, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabelvchost)
.addComponent(jTextFieldvchost, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabelarhost)
.addComponent(jTextFieldarhost, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabelmthost)
.addComponent(jTextFieldmthost, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 26, Short.MAX_VALUE)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButtonCancel, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButtonOK, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);

mainPanel.add(jPanel1, "cardjPanel1");

jPanel2.setPreferredSize(new java.awt.Dimension(530, 313));
jPanel2.addFocusListener(new java.awt.event.FocusAdapter() {
public void focusGained(java.awt.event.FocusEvent evt) {
jPanel2FocusGained(evt);
}
});

jButtonClose.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
jButtonClose.setText("Close");
jButtonClose.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButtonCloseActionPerformed(evt);
}
});

jProgressBar1.setOpaque(true);

jLabelinfo.setFont(new java.awt.Font("Tahoma", 0, 17)); // NOI18N

jLabel3.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
jLabel3.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
jLabel3.setText("Environment Checker");

javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabelinfo, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGroup(jPanel2Layout.createSequentialGroup()
.addGap(206, 206, 206)
.addComponent(jButtonClose, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, Short.MAX_VALUE)))
.addContainerGap())
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
.addGap(0, 148, Short.MAX_VALUE)
.addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 214, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(168, 168, 168))
.addGroup(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jProgressBar1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap())
);
jPanel2Layout.setVerticalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
.addGap(6, 6, 6)
.addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 27, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(29, 29, 29)
.addComponent(jLabelinfo, javax.swing.GroupLayout.PREFERRED_SIZE, 79, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(28, 28, 28)
.addComponent(jProgressBar1, javax.swing.GroupLayout.PREFERRED_SIZE, 65, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(38, 38, 38)
.addComponent(jButtonClose, javax.swing.GroupLayout.PREFERRED_SIZE, 46, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(23, 23, 23))
);

mainPanel.add(jPanel2, "cardjPanel2");

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 640, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(0, 0, Short.MAX_VALUE)
.addComponent(mainPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, Short.MAX_VALUE)))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 400, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(0, 0, Short.MAX_VALUE)
.addComponent(mainPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, Short.MAX_VALUE)))
);

pack();
}// </editor-fold>

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

JLabel test = new JLabel("test", JLabel.LEFT);

jProgressBar1.setValue(0);
jLabelinfo.setText("Working...");
jButtonClose.setEnabled(false);


CardLayout card = (CardLayout)mainPanel.getLayout();
card.show(mainPanel, "cardjPanel2");
jPanel2.setFocusable(true);
jPanel2.requestFocus();


//MainFrame. //TODO add your handling code here:
}

private void jTextFieldarhostActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}

private void formWindowOpened(java.awt.event.WindowEvent evt) {
this.setLocationRelativeTo(null); // *** this will center your app ***
//jPanel1.setVisible(true);
//jPanel2.setVisible(false);

//TODO 在此处添加您的处理代码: }

private void formWindowActivated(java.awt.event.WindowEvent evt) {                                     
// TODO add your handling code here:
}

private void jTextFieldmthostActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}

private void jButtonCancelActionPerformed(java.awt.event.ActionEvent evt) {
System.exit(0); // TODO add your handling code here:
}

private void jPanel2FocusGained(java.awt.event.FocusEvent evt) {

runprogram();
}

private void jButtonCloseActionPerformed(java.awt.event.ActionEvent evt) {
System.exit(0); // TODO add your handling code here:
}

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(MainFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(MainFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(MainFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(MainFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>

/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new MainFrame().setVisible(true);
}
});
}

// Variables declaration - do not modify
private javax.swing.JButton jButtonCancel;
private javax.swing.JButton jButtonClose;
private javax.swing.JButton jButtonOK;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabelarhost;
private javax.swing.JLabel jLabelinfo;
private javax.swing.JLabel jLabelmthost;
private javax.swing.JLabel jLabelpmhost;
private javax.swing.JLabel jLabelvchost;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JProgressBar jProgressBar1;
private javax.swing.JTextField jTextFieldarhost;
private javax.swing.JTextField jTextFieldmthost;
private javax.swing.JTextField jTextFieldpmhost;
private javax.swing.JTextField jTextFieldvchost;
private javax.swing.JPanel mainPanel;
// End of variables declaration

私有(private)无效测试(){

}

私有(private)void runprogram(){

               //Execute when button is pressed
//System.out.println("You clicked the button");

jProgressBar1.setValue(2);
jLabelinfo.setText("Creating Report folder and subdirectories");
jProgressBar1.paintImmediately(jProgressBar1.getVisibleRect());
jLabelinfo.paintImmediately(jLabelinfo.getVisibleRect());

try{
Thread.sleep(1000);
}catch(InterruptedException e){

}

jProgressBar1.setValue(4);
jLabelinfo.setText("Getting OS of remote server");
jProgressBar1.paintImmediately(jProgressBar1.getVisibleRect());
jLabelinfo.paintImmediately(jLabelinfo.getVisibleRect());

try{
Thread.sleep(1000);
}catch(InterruptedException e){

}

jProgressBar1.setValue(10);
jLabelinfo.setText("Retrieving Information from Platform Manager");
jProgressBar1.paintImmediately(jProgressBar1.getVisibleRect());
jLabelinfo.paintImmediately(jLabelinfo.getVisibleRect());

try{
Thread.sleep(1000);
}catch(InterruptedException e){

}

jProgressBar1.setValue(20);
jLabelinfo.setText("Retrieving Information from the VC/Hyper-V server");
jProgressBar1.paintImmediately(jProgressBar1.getVisibleRect());
jLabelinfo.paintImmediately(jLabelinfo.getVisibleRect());

try{
Thread.sleep(1000);
}catch(InterruptedException e){

}

jProgressBar1.setValue(30);
jLabelinfo.setText("Retrieving Information from AR server");
jProgressBar1.paintImmediately(jProgressBar1.getVisibleRect());
jLabelinfo.paintImmediately(jLabelinfo.getVisibleRect());

try{
Thread.sleep(1000);
}catch(InterruptedException e){

}

jProgressBar1.setValue(40);
jLabelinfo.setText("Retrieving Information from Mid Tier server");
jProgressBar1.paintImmediately(jProgressBar1.getVisibleRect());
jLabelinfo.paintImmediately(jLabelinfo.getVisibleRect());

try{
Thread.sleep(1000);
}catch(InterruptedException e){

}

jProgressBar1.setValue(50);
jLabelinfo.setText("Analysing data from the Platform Manager");
jProgressBar1.paintImmediately(jProgressBar1.getVisibleRect());
jLabelinfo.paintImmediately(jLabelinfo.getVisibleRect());

try{
Thread.sleep(1000);
}catch(InterruptedException e){

}

jProgressBar1.setValue(60);
jLabelinfo.setText("Analysing data from the AR server");
jProgressBar1.paintImmediately(jProgressBar1.getVisibleRect());
jLabelinfo.paintImmediately(jLabelinfo.getVisibleRect());

try{
Thread.sleep(1000);
}catch(InterruptedException e){

}

jProgressBar1.setValue(70);
jLabelinfo.setText("Analysing data from the VC/Hyper-V");
jProgressBar1.paintImmediately(jProgressBar1.getVisibleRect());
jLabelinfo.paintImmediately(jLabelinfo.getVisibleRect());

try{
Thread.sleep(1000);
}catch(InterruptedException e){

}

jProgressBar1.setValue(80);
jLabelinfo.setText("Analysing data from the BSA server");
jProgressBar1.paintImmediately(jProgressBar1.getVisibleRect());
jLabelinfo.paintImmediately(jLabelinfo.getVisibleRect());

try{
Thread.sleep(1000);
}catch(InterruptedException e){

}

jProgressBar1.setValue(90);
jLabelinfo.setText("Analysing data from the Mid Tier server");
jProgressBar1.paintImmediately(jProgressBar1.getVisibleRect());
jLabelinfo.paintImmediately(jLabelinfo.getVisibleRect());

try{
Thread.sleep(1000);
}catch(InterruptedException e){

}

jProgressBar1.setValue(95);
jLabelinfo.setText("Comparing values with tuning guide and creating Report.xlsx");
jProgressBar1.paintImmediately(jProgressBar1.getVisibleRect());
jLabelinfo.paintImmediately(jLabelinfo.getVisibleRect());

try{
Thread.sleep(1000);
}catch(InterruptedException e){

}

jProgressBar1.setValue(100);
jLabelinfo.setText("Analysing data Complete. Please check the Report folder");
jProgressBar1.paintImmediately(jProgressBar1.getVisibleRect());
jLabelinfo.paintImmediately(jLabelinfo.getVisibleRect());


jButtonClose.setEnabled(true);
jPanel2.setFocusable(false);

}

}

最佳答案

最后发现,如果我在程序运行之前将以下代码添加到“确定”按钮代码中,问题就解决了:

jPanel2.paintImmediately(jPanel2.getVisibleRect());

关于Java 1.7 似乎以与其他 Java 版本不同的方式显示 jPanel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39829899/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com