2015-09-17 2 views
0

Я создаю свою первую программу в java (в Netbeans), это в основном значок SystemTray со всплывающим меню с различными функциями для каждого элемента. В следующем элементе я хочу использовать «displayMessage» вместо «showMessageDialog», после чего изображение было сохранено. Я пробовал с trayIcon.displayMessage("Message", "message", TrayIcon.MessageType.INFO);, но он не работает, и я не знаю, почему, у вас есть идеи?displayMessage вместо showMessageDialog

 item5.addActionListener(new ActionListener() { 
     @Override 

     public void actionPerformed(ActionEvent e) { 

      BufferedImage image = null; 

      try { 
       Thread.currentThread().sleep(500); 
      } catch (InterruptedException ex) { 
       Logger.getLogger(SupTray.class.getName()).log(Level.SEVERE, null, ex); 
      } 

      try { 
       image = new Robot().createScreenCapture(new Rectangle(Toolkit.getDefaultToolkit().getScreenSize())); 
      } catch (AWTException ex) { 
       Logger.getLogger(SupTray.class.getName()).log(Level.SEVERE, null, ex); 
      } 
      try { 
       SimpleDateFormat formatter = new SimpleDateFormat("ddMMyyyy_HH.mm.ss"); 
       Calendar now = Calendar.getInstance(); 
       ImageIO.write(image, "png", new File(System.getProperty("user.home")+"\\Desktop\\"+formatter.format(now.getTime())+".png")); 
      } catch (IOException ex) { 
       Logger.getLogger(SupTray.class.getName()).log(Level.SEVERE, null, ex); 
      } 
      JOptionPane.showMessageDialog(null, "L'immagine è stata salvata nel desktop.", "Cattura schermata", JOptionPane.INFORMATION_MESSAGE); 
     } 

    }); 

ответ

0

Я не уверен, если это делает никакой разницы в этом случае, но в целом следует указать компонент диалог должен отображаться (пустое значение в JOptionPane.showMessageDialog). У меня были некоторые ненужные проблемы, которые не делали это некоторое время назад.

Смежные вопросы