2014-07-04 5 views
0

Я работаю над системой управления запасами с Java SE.I хочу, чтобы система отображала уведомление, когда количество предметов на складе понижается ниже установленного порога. скажем, когда количество элемента в базе данных ниже 50. Система должна отображать уведомление пользователю. Я исследовал хотя, но результат don, t соответствует тому, что мне точно нужно.Java SE Swing Notification

+0

Возможный дубликат [Как создать уведомление в качели] (http://stackoverflow.com/questions/3240415/how-to-create-a-notification-in-swing) – GreatDane

+0

Как вы хотите, чтобы уведомление отображаться? Здесь есть много разных возможностей, и было бы полезно узнать больше. Вы также должны учитывать, когда проверять базу данных. Это однопользовательское приложение? Имеет ли пользователь доступ к отображению запасов всех предметов? Как вы добавляете и вычитаете свой запас в базе данных? Какая (возможно, все) из этих частей возможной проблемы является вашей конкретной проблемой? – KjetilNordin

+0

Непонятно, где вы застряли: доступ к базе данных? создание уведомления? – trashgod

ответ

1

Если я правильно понял ваш вопрос, вы ищете возможность сообщить пользователю о возникшей проблеме. У Swing есть 2 стандартных возможности для этого: всплывающие диалоговые сообщения (пример here) и system tray messages.

Также вы можете использовать свою собственную службу обмена сообщениями. Например, вы можете реализовать строку состояния для своего приложения и использовать ее для отображения своих сообщений. Here - простой пример того, как вы можете это сделать.

1

Подход, который вы предпринимаете для уведомления пользователей о состоянии вашего приложения, сильно зависит от визуальной структуры вашего приложения и платформы, на которой он работает. Если ваше приложение нацелено на рабочую среду, и сообщение, которое вы проецируете, не предупреждает пользователя о чем-то критически важном, то небольшая строка состояния вполне может быть хорошим выбором.

Если вы нацеливаете среду с ограниченной экранной недвижимостью и должны убедиться, что пользователь видит это сообщение, возможно, диалоговое окно, накладывающее основное приложение, для вас. Ниже приведен быстрый и грязный пример того, как может выглядеть диалог, накладывающийся на основной кадр приложения.

import javax.swing.*; 
import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 

public class DialogExample extends JFrame 
{ 
    private final static String DIALOG_TITLE = "Warning Dialog"; 
    private final static int DIALOG_ICON = JOptionPane.WARNING_MESSAGE; 
    private final JButton openPopupBtn; 

    public DialogExample() 
    { 
     this.openPopupBtn = new JButton("Open Dialog"); 

     this.openPopupBtn.addActionListener(new ActionListener() { 
      @Override 
      public void actionPerformed(ActionEvent e) { 
       JOptionPane.showMessageDialog(DialogExample.this, "You just opened a dialog.", DIALOG_TITLE, DIALOG_ICON); 
      } 
     }); 

     this.setTitle("Dialog Example"); 
     this.setSize(640,480); 
     this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     this.setLocationRelativeTo(null); 
     this.add(this.openPopupBtn); 
     this.setResizable(false); 
    } 

    public static void main(String[] args) { 
     JFrame dialogExample = new DialogExample(); 
     dialogExample.setVisible(true); 
    } 
} 

Если вам нравится второй подход, рекомендуемый чтение будет How to Make Dialogs. На этой странице также показана возможность добавить немного богатства в эти диалоги.

+0

Спасибо, что разъяснил, как отобразить уведомление. – codereal