2017.04.10 00:57


hyperlink in JLabel


AWT, Swing 과 같은 Java GUI 를 이용한 개발시에
텍스트 라벨등을 클릭한 경우 HTTP 접속, Email 연결이 되도록 하는 방법.


/**
 * Example of a jLabel Hyperlink and a jLabel Mailto
 */

import java.awt.Cursor;
import java.awt.Desktop;
import java.awt.EventQueue;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

/**
 *
 * @author ibrabelware
 */
public class JLabelLink extends JFrame {
    private JPanel pan;
    private JLabel contact;
        private JLabel website;
    /**
     * Creates new form JLabelLink
     */
    public JLabelLink() {
        this.setTitle("jLabelLinkExample");
        this.setSize(300, 100);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setLocationRelativeTo(null);

        pan = new JPanel();
        contact = new JLabel();
        website = new JLabel();

        contact.setText("<html> contact : <a href=\"\">YourEmailAddress@gmail.com</a></html>");
        contact.setCursor(new Cursor(Cursor.HAND_CURSOR));

        website.setText("<html> Website : <a href=\"\">http://www.google.com/</a></html>");
        website.setCursor(new Cursor(Cursor.HAND_CURSOR));

    pan.add(contact);
    pan.add(website);
        this.setContentPane(pan);
        this.setVisible(true);
        sendMail(contact);
        goWebsite(website);
    }

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /*
         * Create and display the form
         */
        EventQueue.invokeLater(new Runnable() {

            @Override
            public void run() {
                new JLabelLink().setVisible(true);
            }
        });
    }

    private void goWebsite(JLabel website) {
        website.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseClicked(MouseEvent e) {
                try {
                    Desktop.getDesktop().browse(new URI("http://www.google.com/webhp?nomo=1&hl=fr"));
                } catch (URISyntaxException | IOException ex) {
                    //It looks like there's a problem
                }
            }
        });
    }

    private void sendMail(JLabel contact) {
        contact.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseClicked(MouseEvent e) {
                try {
                    Desktop.getDesktop().mail(new URI("mailto:YourEmailAddress@gmail.com?subject=TEST"));
                } catch (URISyntaxException | IOException ex) {
                    //It looks like there's a problem
                }
            }
        });
    }
}


저작자 표시
신고


Posted by injunech
2017.03.11 11:49


WindowBuilder Java GUI(AWT,SWT,Swing) Tool

Eclipse Plug-In 설치방법



<Tools> eclipse의 GUI(AWT/Swing)플러그인(window builder)

 

1. 먼저 이클립스 접속 http://www.eclipse.org/

2. 오늘쪽 상단 검색창에 window builder 검색!!!(사실 구글에서 검색해도 됨)


3. 사실 구글검색이다. 결과 첫번째것 클릭!!

 

4.https://www.eclipse.org/windowbuilder/ 이 사이트에서 Download 를 들어간다.
(다운로드 링크 주소 : https://www.eclipse.org/windowbuilder/download.php)


5. 위 사진의 중앙부분에 Update Sites의 link 부분에서 자기의 이클립스 버전에 맞는 link를 찾아 왼쪽 클릭이 아니라 오른쪽 클릭!!!(다운받는거 아님니다.) 그리고 속성!!!

(참고로 크롬에서는 속성이 없으니 왠만하면 익스플로어에서 접속하자)

 

6. 속성 창이 뜨면 주소(URL)을 드레그하고 ctrl + c 한다.

7. 그리고 이클립스를 실행하고 help - Install - New Software... 를 열면

8. 이런게 나온다.. 여기서 오른쪽에 Add...
 
9. 그럼 Add Repository가 나오는데 Name에 window builder(이름이야 뭐 아무렇게나..) 그리고 Location에 아까 ctrl + c 했던것을 붙여넣어 준다. 그리고 OK!!

 

10. 그럼 자동으로 설치할 파일을 웹이서 찾아주고 Name에 나타나 진다.

11. Select all 클릭 후 Next > 

 

12. 자동으로 다운로드 된다.(싱기방기...)

13. Install할 목록들이 Details하게 나온다..(Swing...SWT...)

Next > 

 

14. Licenses를 Review해라...(영어는 날 힘들게해...어차피 우리는 accept의 노예...I accept... 클릭)

Finish

 

15. 그럼 설치가 된다...


16. 껏다 키란다..Yes

17. 설치 끝.. 실행해 보자 New - other - WindowBuilder - JFram - Next> 하고 JFram을 만들어 보자

 

18. 아래쪽 Design을 클릭해 요런 화면이 나오면 성공!

 

이렇게 설정이 끝나면 Eclipse 툴로 java 디자인을 작업할수 있다.



출처 - http://blog.naver.com/ourbebop/30186910685



저작자 표시
신고


Posted by injunech