- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
显示的图像是我使用 Swing
制作的窗口。
当我单击提交
按钮时,如何创建警报窗口,并且警报应该显示,直到执行的操作完成(警报+代码应该在后台运行)?
这是我的代码片段:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
//alert window should start here when button performed
//and end based on the output i get
DefaultHttpClient httpclient = new DefaultHttpClient();
jLabel3.setText("");
try {
httpclient.getCredentialsProvider().setCredentials(
new AuthScope(getHost(), AuthScope.ANY_PORT),
new UsernamePasswordCredentials(getUser(), getPass()));
HttpResponse response = null;
HttpEntity entity = null;
try {
response = httpclient.execute(httpget);
if(response.getStatusLine().getStatusCode()==500) {
jLabel3.setText("Such Goods Movement does not exist / You do not have permssions for the entered.");
//end here or
} else if(response.getStatusLine().getStatusCode()==401) {
System.out.println(response);
jLabel3.setText("Auth Failed");
//end here or soon based on the event
}
entity = response.getEntity();
System.out.println(entity);
if (entity != null) {
InputStream instream = entity.getContent();
System.out.println(instream);
BufferedReader reader = new BufferedReader(
new InputStreamReader(instream));
String inputLine;
String xmlText="";
while ((inputLine = reader.readLine()) != null)
xmlText = xmlText+inputLine+"\n";
System.out.println(xmlText);
try {
DocumentBuilder db = DocumentBuilderFactory.newInstance().newDocumentBuilder();
InputSource is = new InputSource();
is.setCharacterStream(new StringReader(xmlText));
DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
model.setRowCount(0);
Document doc = db.parse(is);
NodeList nodes = doc.getElementsByTagName("MaterialMgmtInternalMovementLine");
for (int i = 0; i < nodes.getLength(); i++) {
Element element = (Element) nodes.item(i);
getListGRNLine(element);
}
} catch (SAXException ex) {
Logger.getLogger(GoodsReceipt.class.getName()).log(Level.SEVERE, null, ex);
} catch (ParserConfigurationException ex) {
Logger.getLogger(GoodsReceipt.class.getName()).log(Level.SEVERE, null, ex);
}
}
} catch(UnknownHostException e){
jLabel3.setText("URL Not Found / Check Internet Connectivity");
} catch(NoRouteToHostException f){
jLabel3.setText("URL Not Found / Check Internet Connectivity");
} catch (IOException ex) {
Logger.getLogger(GoodsReceipt.class.getName()).log(Level.SEVERE, null, ex);
}
try {
EntityUtils.consume(entity);
} catch (IOException ex) {
Logger.getLogger(GoodsReceipt.class.getName()).log(Level.SEVERE, null, ex);
}
} catch (UnsupportedEncodingException ex) {
Logger.getLogger(GoodsReceipt.class.getName()).log(Level.SEVERE, null, ex);
} finally {
// When HttpClient instance is no longer needed,
// shut down the connection manager to ensure
// immediate deallocation of all system resources
httpclient.getConnectionManager().shutdown();
}
}
图像窗口:
最佳答案
只需单击开始,然后等待JDialog
自动关闭。这可能会给你一个关于如何处理这件事的轻微想法:-)
请看一下这个例子:
import java.awt.*;
import java.awt.event.*;
import java.net.URL;
import javax.imageio.ImageIO;
import javax.swing.*;
public class SwingWorkerExample {
private JFrame frame;
private JLabel statusLabel;
private JTextArea tArea;
private JButton startButton;
private JButton stopButton;
private MyDialog dialog;
private BackgroundTask backgroundTask;
private ActionListener buttonActions =
new ActionListener() {
@Override
public void actionPerformed(ActionEvent ae) {
JButton source = (JButton) ae.getSource();
if (source == startButton) {
startButton.setEnabled(false);
stopButton.setEnabled(true);
backgroundTask = new BackgroundTask();
backgroundTask.execute();
dialog = new MyDialog(frame, true);
dialog.displayDialog();
} else if (source == stopButton) {
backgroundTask.cancel(true);
stopButton.setEnabled(false);
startButton.setEnabled(true);
}
}
};
private void displayGUI() {
frame = new JFrame("Swing Worker Example");
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
JPanel contentPane = new JPanel();
contentPane.setBorder(
BorderFactory.createEmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new BorderLayout(5, 5));
statusLabel = new JLabel("Status Bar", JLabel.CENTER);
tArea = new JTextArea(20, 20);
tArea.setWrapStyleWord(true);
tArea.setLineWrap(true);
tArea.setBorder(
BorderFactory.createTitledBorder("Chat Area : "));
JScrollPane chatScroller = new JScrollPane();
chatScroller.setViewportView(tArea);
startButton = new JButton("Start");
startButton.addActionListener(buttonActions);
stopButton = new JButton("Stop");
stopButton.setEnabled(false);
stopButton.addActionListener(buttonActions);
JPanel buttonPanel = new JPanel();
buttonPanel.add(startButton);
buttonPanel.add(stopButton);
contentPane.add(statusLabel, BorderLayout.PAGE_START);
contentPane.add(chatScroller, BorderLayout.CENTER);
contentPane.add(buttonPanel, BorderLayout.PAGE_END);
frame.setContentPane(contentPane);
frame.pack();
frame.setLocationByPlatform(true);
frame.setVisible(true);
}
private class BackgroundTask extends SwingWorker<Void, String> {
private String textInput;
private int counter = 0, count = 0;
private String[] arrNames = { "US Rates Strategy Cash",
"Pavan Wadhwa(1-212) 844-4597", "Srini Ramaswamy(1-212) 844-4983",
"Meera Chandan(1-212) 855-4555", "Kimberly Harano(1-212) 823-4996",
"Feng Deng(1-212) 855-2555", "US Rates Strategy Derivatives",
"Srini Ramaswamy(1-212) 811-4999",
"Alberto Iglesias(1-212) 898-5442",
"Praveen Korapaty(1-212) 812-3444", "Feng Deng(1-212) 812-2456",
"US Rates Strategy Derivatives", "Srini Ramaswamy(1-212) 822-4999",
"Alberto Iglesias(1-212) 822-5098",
"Praveen Korapaty(1-212) 812-3655", "Feng Deng(1-212) 899-2222" };
public BackgroundTask() {
statusLabel.setText((this.getState()).toString());
System.out.println(this.getState());
}
@Override
protected Void doInBackground() {
System.out.println(this.getState());
while (!isCancelled()) {
counter %= arrNames.length;
System.out.format("Count : %d%n", count);
publish(arrNames[counter]);
counter++;
count++;
if (count == 10000) {
this.cancel(true);
}
}
System.out.println(this.getState());
return null;
}
@Override
protected void process(java.util.List<String> messages) {
statusLabel.setText((this.getState()).toString());
for (String message : messages)
tArea.append(message + "\n");
}
@Override
protected void done() {
System.out.println("DONE called");
dialog.dispose();
}
}
public static void main(String[] args) {
Runnable runnable = new Runnable() {
@Override
public void run() {
new SwingWorkerExample().displayGUI();
}
};
EventQueue.invokeLater(runnable);
}
}
class MyDialog extends JDialog {
private JLabel alertLabel;
private ImageIcon icon;
public MyDialog(Frame owner, boolean isModal) {
super(owner, isModal);
try {
icon = new ImageIcon(ImageIO.read(new URL(
"http://i.imgur.com/Aoluk8n.gif")));
} catch (Exception e) {
e.printStackTrace();
}
}
public void displayDialog() {
alertLabel = new JLabel("Alert Message", icon, JLabel.CENTER);
JPanel contentPane = new JPanel();
contentPane.add(alertLabel);
setContentPane(contentPane);
pack();
setVisible(true);
}
}
关于java - 警告窗口,直到方法在 Swing 中完成执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18674723/
你好,我正在尝试在 opensuse 中创建一个 Shell 脚本来创建 MySqlUsers,但是当我尝试运行它时,我得到了这个错误: Warning: Could not start progra
我阅读了有关此错误的所有信息,但未能找到任何解决方案。 我有一个看起来像这样的简单页面: $xmlfile = "/var/www/marees.xml"; //Fichier dans lequel
运行 Websphere App 服务器 V8.5 Liberty Profile。我找不到任何可以解决这些警告的帮助。我在 eclipse 。 ************** He
我尝试在 GC AppEngine 上部署应用程序。部署过程中没有错误,但应用程序无法运行(仅显示加载页面)。日志中唯一一个奇怪的原始 OpenBLAS WARNING - could not det
我刚开始学习 RestKit。我正在尝试使用它来使用 Foursquare api 获取附近的 field 。但每次我尝试“objectLoader:(RKObjectLoader *)objectL
我对 Vuejs 比较陌生,每次按键时都会收到以下警告: [Vue warn]: $attrs is readonly. found in ---> at src\component
Warning: simplexml_load_file() [function.simplexml-load-file]: I/O warning : failed to load external
我在尝试修改某些表时不断收到此错误。这是我的代码: /** = 1){ //$this->mysqli->autocommit(FALSE); //insert th
当我尝试使用 PHP 的 ftp_put 函数上传文件时,早些时候出现错误: 警告:ftp_put() [function.ftp-put]:无数据连接 现在,我尝试开启被动模式: ftp_pasv(
我一直在努力让这段代码适用于现阶段的年龄。它旨在计算一个范围内的素数,我已经编写了一种方法来打印它们。不幸的是,代码将无法编译,引用警告: “警告:[未检查] 未检查调用 add(E) 作为原始类型
尝试使用带有架构组件和Kotlin的Android Studio 3 Canary 5构建示例会给出此警告。 谁能告诉我原因? 谢谢,Ove 编辑#1: 这是Dan Lew前段时间制作的样本 http
我正在编写一个 Shiny 的应用程序,它运行得非常好,突然我收到两条警告消息。我已经回到以前运行良好的副本,它们现在显示相同的错误消息,所以我真的很困惑。我的代码仍然运行并在我 Shiny 的仪表板
03-25 05:52:15.329 8029-8042/com.mgh.radio W/MediaPlayerNative: info/warning (703, 0) 03-25 05:52:15
我在构建时在我的 gradle 控制台中收到一条警告消息: 警告:[options] 引导类路径未与 -source 1.7 一起设置 1 条警告 我怎样才能解决这个问题? 任何帮助表示赞赏! 最佳答
我有下一个代码: 测试.c #include "a1.h" int main() { int a = 8; foo(a); return a; } a1.h void foo
我的程序中有一个 WORD 变量。 WORD hour; 但是当我比较它的时候 if(hour>=0 && hour=0 && hour=0 的比较,它始终适用于 hour 是 WORD 类型,它是一
安全研究人员警告称,一个最新的严重的Java错误,其本质与目前在全球范围内利用的臭名昭著的 Log4Shell 漏洞相同 。 CVE-2021-42392 尚未在国家漏洞数据库 (NVD) 中
安装SqlServer2005时“版本变更检查 (警告)"问题排查 今天同事在安装SqlServer2005时遇到“版本变更检查 (警告) ”问题导致安装失败,警告提示如下: - 版本
我的 UWP 项目中出现以下警告。我已经标记了解决方案的示例,但我更感兴趣的是为什么在同一平台上创建另一个空项目时不会出现此警告? APPX4001: Build property AppxBundl
我试图修复我的登录脚本,在我的本地主机上它可以工作,但上传到我的在线测试服务器时,注销被破坏,我得到这个错误: Warning: session_destroy() [function.session
我是一名优秀的程序员,十分优秀!