2012-02-02 11 views
100

Pochodzących z .NET jestem tak używany wywołanie Alert() w aplikacjach komputerowych. Jednak w tym java aplikacji komputerowej, po prostu chcę ostrzec wiadomość mówiąc „dziękuję za korzystanie java” muszę przejść przez to wiele cierpienia:Jak wyświetlić prostą wiadomość alertu w języku Java?

(używając JOptionPane)

Czy istnieje prostszy sposób?

+10

Czego dokładnie oczekujesz od "łatwiejszego"? Jeśli jest to gadatliwość, dlaczego nie po prostu owinąć go w jakąś statyczną metodę użyteczności i ukryć na przykład? Nawiasem mówiąc, oficjalny tutorial jest [tutaj] (http://docs.oracle.com/javase/tutorial/uiswing/components/dialog.html). – BalusC

+5

Jeśli czytasz dokumentację zamiast 12-letnich samouczków, po których następuje natychmiastowa skarga, dowiesz się, że istnieje [przeciążenie z tylko dwoma parametrami: http://docs.oracle.com/javase/7/docs/api/javax /swing/JOptionPane.html#showMessageDialog(java.awt.Component, java.lang.Object). (Pierwszy z nich może być pusty). – millimoose

Odpowiedz

185

Będę pierwszym, który przyzna Java może być bardzo gadatliwy, ale nie sądzę, jest to nierozsądne:

JOptionPane.showMessageDialog(null, "My Goodness, this is so concise"); 

Jeśli statycznie importować JOptionPane.showMessageDialog ten dodatkowo zmniejsza się

showMessageDialog(null, "This language just gets better and better!"); 
+27

Nic złego w gadatliwości. W rzeczywistości uważam to za jedną z jego mocnych stron. – mre

+10

@ myślę, że to żart albo nieporozumienie "gadatliwość"? –

+4

Nie, to jest opinia. – mre

31

Zakładając masz już JFrame aby zadzwonić to od:

JOptionPane.showMessageDialog(frame, "thank you for using java"); 

Zobacz The Java Tutorials: How to Make Dialogs
Zobacz the JavaDoc

+3

Pierwszy argument może mieć wartość' null', jeśli nie masz dostępnej 'JFrame'. –

+3

Uwaga (do kogo może to dotyczyć): 'JOptionPane' jest w' javax.swing' –

21

Nawet bez importowania huśtawka, można uzyskać połączenie w jednym, wszystkie są długie, ciąg. W przeciwnym razie po prostu użyć import swing i proste połączenie:

JOptionPane.showMessageDialog(null, "Thank you for using Java", "Yay, java", JOptionPane.PLAIN_MESSAGE); 

dość łatwe.

20

Jeśli nie podoba "gadatliwość" zawsze można owinąć kod w krótki sposób:

private void msgbox(String s){ 
    JOptionPane.showMessageDialog(null, s); 
} 

i useage:

msgbox("don't touch that!"); 
4

Call "setWarningMsg()" metoda i przekazać tekst, który chcesz pokazać.

exm:- setWarningMsg("thank you for using java"); 


public static void setWarningMsg(String text){ 
    Toolkit.getDefaultToolkit().beep(); 
    JOptionPane optionPane = new JOptionPane(text,JOptionPane.WARNING_MESSAGE); 
    JDialog dialog = optionPane.createDialog("Warning!"); 
    dialog.setAlwaysOnTop(true); 
    dialog.setVisible(true); 
} 

lub po prostu użyć

JOptionPane optionPane = new JOptionPane("thank you for using java",JOptionPane.WARNING_MESSAGE); 
JDialog dialog = optionPane.createDialog("Warning!"); 
dialog.setAlwaysOnTop(true); // to show top of all other application 
dialog.setVisible(true); // to visible the dialog 

Można użyć JOptionPane. (WARNING_MESSAGE lub INFORMATION_MESSAGE lub ERROR_MESSAGE)

Powiązane problemy