code

팝업 메시지 상자

codestyles 2020. 11. 26. 08:19
반응형

팝업 메시지 상자


내 방법에서 팝업 메시지 상자를 코딩하는 방법을 잘 모르겠습니다.

public String verify(){
    String result = "failed";
    int authcode = staffBean.getVerifyCodeByName(getLoginUserName());

    if (code == authcode){       
        result ="success";
    }    
    else{ //statement to popup an error message box

    }
    return result;
}

JOptionPane내 방법에서 사용하려고했지만 작동하지 않습니다.

String st = "Welcome";
JOptionPane.showMessageDialog(null, st);

javax.swing.JOptionPane

다음은 정보 상자가 팝업되기를 원할 때마다 호출하는 메서드에 대한 코드이며, 수락 될 때까지 화면을 끌어 당깁니다.

import javax.swing.JOptionPane;

public class ClassNameHere
{

    public static void infoBox(String infoMessage, String titleBar)
    {
        JOptionPane.showMessageDialog(null, infoMessage, "InfoBox: " + titleBar, JOptionPane.INFORMATION_MESSAGE);
    }
}

첫 번째 JOptionPane매개 변수 ( null이 예에서)는 대화 상자를 정렬하는 데 사용됩니다. null화면의 중앙에 위치하지만, 어떤 것도 java.awt.Component지정할 수 있으며 Component대신 대화 상자가 그 중앙에 나타납니다 .

나는 titleBar코드에서 상자가 호출되는 위치를 설명 하기 위해 문자열 을 사용하는 경향이 있습니다. 이렇게하면 짜증나는 경우 정보 상자로 내 화면을 스팸하는 코드를 쉽게 추적하고 삭제할 수 있습니다.

이 메서드 호출을 사용하려면 :

ClassNameHere.infoBox("YOUR INFORMATION HERE", "TITLE BAR MESSAGE");

javafx.scene.control.Alert

JavaFX 대화 상자를 사용하는 방법에 대한 자세한 설명은 code.makery의 JavaFX 대화 상자 (공식)참조하십시오 . 스윙 대화 상자보다 훨씬 강력하고 유연하며 메시지를 팝업하는 것 이상을 수행 할 수 있습니다.

위와 같이 동일한 결과를 얻기 위해 JavaFX 대화 상자를 사용하는 방법에 대한 간단한 예를 게시하겠습니다.

import javafx.scene.control.Alert;
import javafx.scene.control.Alert.AlertType;
import javafx.application.Platform;

public class ClassNameHere
{

    public static void infoBox(String infoMessage, String titleBar)
    {
        /* By specifying a null headerMessage String, we cause the dialog to
           not have a header */
        infoBox(infoMessage, titleBar, null);
    }

    public static void infoBox(String infoMessage, String titleBar, String headerMessage)
    {
        Alert alert = new Alert(AlertType.INFORMATION);
        alert.setTitle(titleBar);
        alert.setHeaderText(headerMessage);
        alert.setContentText(infoMessage);
        alert.showAndWait();
    }
}

한 가지 명심해야 할 점은 JavaFX가 단일 스레드 GUI 툴킷이라는 것입니다. 즉,이 메소드는 JavaFX 애플리케이션 스레드에서 직접 호출해야합니다. 작업을 수행하는 다른 스레드가있는 경우 대화 상자가 필요한 경우 다음 SO Q & A를 참조하십시오. JavaFX2 : 백그라운드 작업 / 서비스를 일시 중지 할 수 있습니까? Platform.Runlater 및 태스크 Javafx .

이 메서드 호출을 사용하려면 :

ClassNameHere.infoBox("YOUR INFORMATION HERE", "TITLE BAR MESSAGE");

또는

ClassNameHere.infoBox("YOUR INFORMATION HERE", "TITLE BAR MESSAGE", "HEADER MESSAGE");

먼저 가져와야합니다. import javax.swing.JOptionPane; 다음을 사용하여 호출 할 수 있습니다.

JOptionPane.showMessageDialog(null, 
                              "ALERT MESSAGE", 
                              "TITLE", 
                              JOptionPane.WARNING_MESSAGE);

null은 화면 중앙에 배치합니다. 경고 메시지 아래에 따옴표로 묶으십시오. 제목은 분명히 제목이고 마지막 부분은 오류 메시지처럼 형식을 지정합니다. 일반 메시지를 원하면 PLAIN_MESSAGE. 대부분의 경우 오류에 대해 여러면에서 꽤 잘 작동합니다.


특히 프로젝트를 실행할 때 (즉, 디버그 모드가 아닌 경우) 디버깅에 사용하는 몇 가지 "향상"기능입니다.

  1. 기본적으로 메시지 상자 제목을 호출 메서드의 이름으로 설정합니다. 이것은 주어진 지점에서 스레드를 중지하는 데 편리하지만 릴리스 전에 정리해야합니다.
  2. 이미지를 검색 할 수 없기 때문에 발신자 이름과 메시지를 클립 보드에 자동으로 복사합니다!

    package forumposts;
    
    import java.awt.Toolkit;
    import java.awt.datatransfer.Clipboard;
    import java.awt.datatransfer.StringSelection;
    import javax.swing.JOptionPane;
    
    public final class MsgBox
    {
        public static void info(String message) {
            info(message, theNameOfTheMethodThatCalledMe());
        }
        public static void info(String message, String caller) {
            show(message, caller, JOptionPane.INFORMATION_MESSAGE);
        }
    
        static void error(String message) {
            error(message, theNameOfTheMethodThatCalledMe());
        }
        public static void error(String message, String caller) {
            show(message, caller, JOptionPane.ERROR_MESSAGE);
        }
    
        public static void show(String message, String title, int iconId) {
            setClipboard(title+":"+NEW_LINE+message);
            JOptionPane.showMessageDialog(null, message, title, iconId);
        }
        private static final String NEW_LINE = System.lineSeparator();
    
        public static String theNameOfTheMethodThatCalledMe() {
            return Thread.currentThread().getStackTrace()[3].getMethodName();
        }
    
        public static void setClipboard(String message) {
            CLIPBOARD.setContents(new StringSelection(message), null);
            // nb: we don't respond to the "your content was splattered"
            //     event, so it's OK to pass a null owner.
        }
        private static final Toolkit AWT_TOOLKIT = Toolkit.getDefaultToolkit();
        private static final Clipboard CLIPBOARD = AWT_TOOLKIT.getSystemClipboard();
    
    }
    

전체 클래스에는 디버그 및 경고 메서드도 있지만 간결함을 위해 잘라 냈으며 어쨌든 요점을 얻었습니다. 공개 정적 부울 isDebugEnabled를 사용하여 디버그 메시지를 억제 할 수 있습니다. 제대로 수행되면 최적화 프로그램은 프로덕션 코드에서 이러한 메서드 호출을 (거의) 제거합니다. 참조 : http://c2.com/cgi/wiki?ConditionalCompilationInJava

건배. 키스.


JOptionPane.showMessageDialog(btn1, "you are clicked save button","title of dialog",2);

btn1은 JButton 변수이며이 대화 상자에서 열린 위치 btn1 또는 텍스트 필드 등을 대화하는 데 사용되며 기본적으로 프레임의 null 위치를 사용하고 다음은 대화 제목입니다. 경고 유형 아이콘 3의 2 개 숫자는 1,2,3,4 정보입니다. 좋아 이해 해주길


좋아, 그래서 기본적으로 간단하고 효과적인 해결책이 있다고 생각합니다.

package AnotherPopUpMessage;
import javax.swing.JOptionPane;
public class AnotherPopUp {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        JOptionPane.showMessageDialog(null, "Again? Where do all these come from?", 
            "PopUp4", JOptionPane.CLOSED_OPTION);
    }
}

다음 라이브러리를 사용하십시오. import javax.swing.JOptionPane;

코드 라인의 맨 위에 입력하십시오. 다른 작업이 올바르게 수행되었으므로이 항목 만 추가해야합니다!


import javax.swing.*;
class Demo extends JFrame
{
           String str1;
           Demo(String s1)
           {
             str1=s1;
            JOptionPane.showMessageDialog(null,"your message : "+str1);
            }
            public static void main (String ar[])
            {
             new Demo("Java");
            }
}

POP UP WINDOWS IN APPLET

hi guys i was searching pop up windows in applet all over the internet but could not find answer for windows.

Although it is simple i am just helping you. Hope you will like it as it is in simpliest form. here's the code :

Filename: PopUpWindow.java for java file and we need html file too.

For applet let us take its popup.html

CODE:

import java.awt.*;

import java.applet.*;

import java.awt.event.*;

public class PopUpWindow extends Applet{

public void init(){

Button open = new Button("open window");

add(open);

Button close = new Button("close window");

add(close);

 Frame f = new Frame("pupup win");

  f.setSize(200,200);




 open.addActionListener(new ActionListener() {

                 public void actionPerformed(ActionEvent e) {
                     if(!f.isShowing()) {
                         f.setVisible(true);
                     }


                 }

              });
 close.addActionListener(new ActionListener() {

                 public void actionPerformed(ActionEvent e) {
                     if(f.isShowing()) {
                        f.setVisible(false);
                     }

                 }

              });

 }

}




/*
<html>

<body>

<APPLET CODE="PopUpWindow" width="" height="">

</APPLET>

</body>

</html>

*/


to run:
$javac PopUpWindow.java && appletviewer popup.html

참고URL : https://stackoverflow.com/questions/7080205/popup-message-boxes

반응형