久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

<legend id='2cEPa'><style id='2cEPa'><dir id='2cEPa'><q id='2cEPa'></q></dir></style></legend>

    <i id='2cEPa'><tr id='2cEPa'><dt id='2cEPa'><q id='2cEPa'><span id='2cEPa'><b id='2cEPa'><form id='2cEPa'><ins id='2cEPa'></ins><ul id='2cEPa'></ul><sub id='2cEPa'></sub></form><legend id='2cEPa'></legend><bdo id='2cEPa'><pre id='2cEPa'><center id='2cEPa'></center></pre></bdo></b><th id='2cEPa'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='2cEPa'><tfoot id='2cEPa'></tfoot><dl id='2cEPa'><fieldset id='2cEPa'></fieldset></dl></div>

      • <bdo id='2cEPa'></bdo><ul id='2cEPa'></ul>
      1. <small id='2cEPa'></small><noframes id='2cEPa'>

      2. <tfoot id='2cEPa'></tfoot>
      3. Java - 全局的、可重用的加載對話框

        Java - global, reusable loading dialog(Java - 全局的、可重用的加載對話框)

        1. <i id='luDxa'><tr id='luDxa'><dt id='luDxa'><q id='luDxa'><span id='luDxa'><b id='luDxa'><form id='luDxa'><ins id='luDxa'></ins><ul id='luDxa'></ul><sub id='luDxa'></sub></form><legend id='luDxa'></legend><bdo id='luDxa'><pre id='luDxa'><center id='luDxa'></center></pre></bdo></b><th id='luDxa'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='luDxa'><tfoot id='luDxa'></tfoot><dl id='luDxa'><fieldset id='luDxa'></fieldset></dl></div>
            <bdo id='luDxa'></bdo><ul id='luDxa'></ul>

                  <legend id='luDxa'><style id='luDxa'><dir id='luDxa'><q id='luDxa'></q></dir></style></legend>

                  <small id='luDxa'></small><noframes id='luDxa'>

                    <tbody id='luDxa'></tbody>
                  <tfoot id='luDxa'></tfoot>
                  本文介紹了Java - 全局的、可重用的加載對話框的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!

                  問題描述

                  我正在嘗試實現(xiàn)一個全局加載對話框...我想調(diào)用一些靜態(tài)函數(shù)來顯示對話框和一些靜態(tài)函數(shù)來關(guān)閉它.同時我在主線程或子線程中做一些工作......

                  I'm trying to implement a global loading dialog... I want to call some static function to show the dialog and some static function to close it. In the meanwhile I'm doing some work in the main thread or in a sub thread...

                  我嘗試關(guān)注,但對話框沒有更新...最后一次,在再次隱藏之前,它會更新...

                  I tried following, but the dialog is not updating... Just once at the end, before hiding it again, it updates...

                      private static Runnable getLoadingRunable()
                  {
                      if (loadingRunnable != null)
                      {
                          loadingFrame.setLocationRelativeTo(null);
                          loadingFrame.setVisible(true);  
                          return loadingRunnable;
                      }
                  
                      loadingFrame = new JFrame("Updating...");
                      final JProgressBar progressBar = new JProgressBar();
                      progressBar.setIndeterminate(true);
                      final JPanel contentPane = new JPanel();
                      contentPane.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));
                      contentPane.setLayout(new BorderLayout());
                      contentPane.add(new JLabel("Updating..."), BorderLayout.NORTH);
                      contentPane.add(progressBar, BorderLayout.CENTER);
                      loadingFrame.setContentPane(contentPane);
                      loadingFrame.pack();
                      loadingFrame.setLocationRelativeTo(null);
                      loadingFrame.setVisible(true);  
                  
                      loadingRunnable = new Runnable() {
                          public void run() {
                  
                              try {
                                  while (running) {
                                      Thread.sleep(100);
                                  }
                              } catch (InterruptedException e) {
                                  e.printStackTrace();
                              }
                  
                              SwingUtilities.invokeLater(new Runnable() {
                                  public void run() {
                                      loadingFrame.setVisible(false);
                                  }
                              });
                          }
                      };
                      return loadingRunnable;
                  }
                  
                  public static void showLoadingBar() {
                      System.out.println("showLoadingBar");
                      running = true;
                  
                      threadLoadingBar = new Thread(getLoadingRunable());
                      threadLoadingBar.start();
                  }
                  
                  public static void hideLoadingBar() {
                      System.out.println("hideLoadingBar");
                      running = false;
                      threadLoadingBar = null;
                  }
                  

                  推薦答案

                  如果沒有動畫,說明你正在事件調(diào)度線程中工作,同時顯示加載幀.這個后臺工作應(yīng)該在另一個線程中完成.

                  If it doesn't animate, it means that you're doing work in the event dispatch thread while the loading frame is displayed. This background work should be done in another thread.

                  這是一個無效的示例:

                  public static void main(String[] args) throws Exception {
                      SwingUtilities.invokeLater(
                          new Runnable() {
                              @Override
                              public void run() {
                                  try {
                                      showLoadingBar();
                                      Thread.sleep(10000L); // doing work in the EDT. Prevents the frame from animating
                                      hideLoadingBar();
                                  }
                                  catch (InterruptedException e) {
                                  }
                              }
                          }
                      );
                  }
                  

                  這是一個工作示例:

                  public static void main(String[] args) throws Exception {
                      showLoadingBar();
                      Thread.sleep(10000L); // doing work outside of the EDT. Everything works fine
                      hideLoadingBar();
                  }
                  

                  附注:實例化、填充和使加載框架可見的代碼應(yīng)包裝在 SwingUtilities.invokeLater() 中,因為它必須在 EDT 中運行.

                  Side note: the code which instantiates, populates and makes the loading frame visible should be wrapped into SwingUtilities.invokeLater(), because it must be run in the EDT.

                  這篇關(guān)于Java - 全局的、可重用的加載對話框的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

                  【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請聯(lián)系我們刪除處理,感謝您的支持!

                  相關(guān)文檔推薦

                  How can I detect integer overflow on 32 bits int?(如何檢測 32 位 int 上的整數(shù)溢出?)
                  Local variables before return statements, does it matter?(return 語句之前的局部變量,這有關(guān)系嗎?)
                  How to convert Integer to int?(如何將整數(shù)轉(zhuǎn)換為整數(shù)?)
                  How do I create an int array with randomly shuffled numbers in a given range(如何在給定范圍內(nèi)創(chuàng)建一個隨機打亂數(shù)字的 int 數(shù)組)
                  Inconsistent behavior on java#39;s ==(java的行為不一致==)
                  Why is Java able to store 0xff000000 as an int?(為什么 Java 能夠?qū)?0xff000000 存儲為 int?)
                    <bdo id='sdQEo'></bdo><ul id='sdQEo'></ul>

                        <legend id='sdQEo'><style id='sdQEo'><dir id='sdQEo'><q id='sdQEo'></q></dir></style></legend>
                      • <tfoot id='sdQEo'></tfoot>

                          <i id='sdQEo'><tr id='sdQEo'><dt id='sdQEo'><q id='sdQEo'><span id='sdQEo'><b id='sdQEo'><form id='sdQEo'><ins id='sdQEo'></ins><ul id='sdQEo'></ul><sub id='sdQEo'></sub></form><legend id='sdQEo'></legend><bdo id='sdQEo'><pre id='sdQEo'><center id='sdQEo'></center></pre></bdo></b><th id='sdQEo'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='sdQEo'><tfoot id='sdQEo'></tfoot><dl id='sdQEo'><fieldset id='sdQEo'></fieldset></dl></div>

                        • <small id='sdQEo'></small><noframes id='sdQEo'>

                            <tbody id='sdQEo'></tbody>

                            主站蜘蛛池模板: 欧美日韩亚洲二区 | 黄色成人在线网站 | 中文字幕一区二区三区精彩视频 | 日本黄色影片在线观看 | 久久九精品 | 老司机成人在线 | 在线欧美一区 | 精品综合久久久 | 黑人巨大精品欧美一区二区免费 | 91色综合| 亚洲一区 中文字幕 | 国产乱码精品1区2区3区 | 中国大陆高清aⅴ毛片 | 国产精品综合 | 91香蕉| 欧美激情一区 | 一区二区在线 | 欧美一区二区三区小说 | 国产欧美一区二区三区另类精品 | 在线a视频| 综合久久99 | 国产视频久久 | 亚洲欧洲色视频 | 欧美精品成人影院 | 夜夜操av| 天天综合成人网 | 久久大陆 | 在线播放中文字幕 | 一区二区三区视频在线免费观看 | 亚洲综合免费 | 成人高清网站 | www.日本在线观看 | 18gay男同69亚洲网站 | www.中文字幕 | 中文字幕在线第二页 | yiren22 亚洲综合 | 不卡在线一区 | 亚洲欧美日韩电影 | 欧美视频一区 | 91精品国产色综合久久 | 久久久久久国产 |