รู้จักกับ Java GUI วิธีการสร้าง GUI ทำความรู้จัก Swing GUI และ AWT GUI (JFC) |
รู้จักกับ Java GUI วิธีการสร้าง Java GUI ทำความรู้จัก Swing GUI และ AWT GUI (JFC) สำหรับ GUI (Graphical User Interface) เป็นการเขียนโปรแกรม Java ที่สร้างหน้าจอ Interface ที่เป็นแบบ Graphic ซึ่งมีรูปแบบเหมือนกับการใช้งานบน Windows / Mac หรือ Linux ที่เป็น Desktop ซึ่งจะมีวิธีการเขียนเหมือนกับ Window App ใน .Net Framework ซึ่งเราอาจจะคุ้นเคยพวก Windows Form ที่ประกอบด้วย Label , Textbox ,Button การสร้าง Event Handler ด้วยการคลิก รวมทั้งการสร้างพวก Menu bar / Tabbar ซึ่งส่วนประกอบเหล่านี้ในการเขียน Java GUI ก็สามารถทำได้เช่นเดียวกัน โดยทั้งหมดนี้เราสามารถทำผ่าน Visual มุมมองการ Drag and Drop
Java GUI
โดยการสร้าง GUI ที่จะแสดงผลและขั้นตอนการออกแบบเพื่อให้โปรกรมทำงานได้นั้น จะประกอบด้วย 3 ส่วนหลัก ๆ คือ
- Layout Managers : คือส่วนของการจัดวาง Layout ต่าง ๆ เช่น BorderLayout, FlowLayout, CardLayout, GridLayout , GridBagLayout ให้เรานึกถึงการวาง Layout เหมือนกับ Visual Studio คือบาง Layout จะอ้างอิงตำแหน่ง X,Y บาง Layout จะจัดรูปแบบเหมือนกับ Table , Grid
- Graphical Components : คือพวก Control ต่าง ๆ ที่เราจะนำมาใส่ใน Windows Form เช่น พวก Label, Textbox , Button , Menu, MenuBar, Manultem, Panel และอื่น ๆ
- Containers : คือพวก Component ที่สามารถนำนสร้างเป็น Window Form หลักได้ เช่น Frame , Dialog และอื่น ๆ
และจากที่ได้กล่าวมาเราสามารถใช้ Package และ Class ที่อยู่ในกลุ่มของ Swing (java.swing) และ AWT (java.awt) ซึ่ง Library ทั้ง 2 ตัวนี้สามารถใช้งานร่วมกันใน Window Form เดียวกัน แต่ส่วนมากแล้ว Swing จะถูกใช้งานในการสร้าง Form มากกว่า AWT
Java Swing GUI คืออะไร
Swing เป็น Library และ Class ที่อยู่ภายใต้ Package ของ (javax.swing) และอยู่ภายใต้ Java Foundation Classes (JFC) โดยที่ Class ของ Swing จะมี Feature อยู่มากมาย ที่ใช้สำหรับการออกแบบ Form อาทิเช่น การสร้าง Windows Form รูปแบบการจัดวาง Layout และส่วนประกอบของ Controls ต่าง ๆ อาทิ พวก Label , Textbox , Button และอื่น ๆ
Java AWT GUI คืออะไร
สำหรับ AWT (Abstract Windowing Toolkit) เป็น Class ที่อยู่ใน Package ของ (javax.awt) ที่ใช้ออกแบบ GUI เช่นเดียวกับ Swing โดยพื้นฐานทั่วไปแล้ว จะมี ส่วนประกอบ 3 ส่วนเช่นเดียวกับ Swing เช่น AWT Components , AWT Containers และ Layout Managers สามารถใช้ออกแบบ Window Form ได้เช่นเดียวกับ Swing
แล้วทำไมถึงจะต้องใช้ Swing และ AWT ทั้ง 2 ตัว
แน่นอนว่า Class ทั้ง 2 ตัว สามารถใช้ออกแบบ Window Form ได้เช่นเดียวกัน และก็สามารถใช้ทั้ง 2 ตัวทำงานร่วมกันได้ใน Form เดียวกัน แต่ในปัจจุบัน นักพัฒนาโปรแกรม Java ทั่วไปจะแนะนำให้ใช้ Swing มากกว่า AWT เหตุผลหนึ่งก็คือ Swing สามารถทำงานได้เร็ว AWT และ ไม่ค่อยมีปัญหาเรื่อง Cross-Platform เมื่อใช้กับหลาย ๆ OS พวก GUI จะไม่ค่อยเปลี่ยนแปลงมากนัก และ Swing ยังมีพวกลูกเล่นและ Controls ให้เลือกใช้มากกว่า AWT พอสมควร
หน้าตาของ Java GUI
หน้าตาของ Java GUI
เริ่มต้นสร้าง Java GUI จะเริ่มต้นอย่างไร
โดยปกติแล้ว Swing และ AWT จะมีมาพร้อมกับ Java SDK ทันที นั่นหมายถึงว่า เราสามารถที่จะสร้าง GUI Form ด้วยการเขียน Code ด้วยภาษา Java ได้ในทันที เช่น
package com.java.myapp;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class MyClass extends JFrame {
public static void main(String[] args) {
MyClass frameTabel = new MyClass();
frameTabel.setVisible(true);
}
public MyClass() {
// JFrame Property
super("ThaiCreate.Com Tutorial Java GUI"); // Title
setSize(300, 200);
setLocation(500, 280);
// Text Label
JLabel welcome = new JLabel("Welcome to ThaiCreate.Com");
welcome.setBounds(70, 50, 150, 60);
// Panel
JPanel panel = new JPanel();
panel.setLayout(null);
panel.add(welcome);
getContentPane().add(panel);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
}
Output
![Java GUI Swing / AWT Java GUI Swing / AWT](https://www.thaicreate.com/upload/tutorial/java-gui-jframe-02.jpg?v=1001)
จากตัวอย่างการสร้าง Window Form ด้วย Swing ซึ่งใช้ JFrame เป็น Class หลักที่ทำหน้าที่เป็น Container และพวก JLabel , JPanel จะเป็นส่วนของ Components หรือ Control
แต่จากตัวอย่างจะเห็นว่ากว่าเราจะได้ Form จะต้องเขียน Code มากมาย แล้วใครจะไปจำได้หมด ซึ่งก็เป็นเช่นนั้นจริง ๆ จะให้เขียนเองก็ไม่ไหวแน่ ๆ แต่ไม่ต้องห่วง Code เหล่านี้มีเครื่องมือช่วย โดยที่เราไม่ต้องมาเขียนเอง เพราะเราสามารถเลือกใช้ Tools และเครื่องมือของโปรแกรม Netbeans และ Eclipse ช่วยสร้าง Form พวกนี้ในมุมมองของ Visual คือสามารถ Drag and Drop ก็สร้าง Form ขึ้นมาได้ง่ายสุด ๆ โดยที่เราไม่ต้องมานั่งเขียน Code เอง (สามารถเลือกใช้ได้ทั้ง Netbeans หรือ Eclipse)
![](/images/adv.jpg)
Eclipse IDE for Java GUI สำหรับโปรแกรม Eclipse อยากจะแนะนำให้ใช้รุ่นของ Indigo , Helios หรือ Galileo และจะต้องติดตั้ง Plugin เพิ่มเติม
โปรแกรม Eclipse
มี Visual Tools ที่ช่วยออกแบบ Form และมีเครื่องมือต่าง ๆ มากมาย
สามารถสร้าง Event และคุณสมบัติอื่น ๆ ได้ง่ายสุด
อ่านวิธีติดตั้ง Eclipse for Java GUI และวิธีการใช้งาน
Eclipse : สร้าง Java GUI ด้วย WindowBuilder Designer ช่วยสร้าง GUI ได้ง่ายสุด ๆ
Eclipse : สร้าง Java GUI Application ด้วยโปรแกรม Eclipse IDE แบบง่าย ๆ
Eclipse : สร้าง Java GUI และการสร้าง Event Action และ Dialog โต้ตอบแบบง่าย ๆ
Netbeans IDE for Java GUI สำหรับ Netbeans จะมี Tools จะสำหรับการเขียน Java GUI มาพร้อม โดยที่ไม่ต้องติดตั้ง Plugin เพิ่มเติม
โปรแกรม Netbeans
เครื่องมือ Tools สำหรับการออกแบบ GUI ด้วย Netbeans ได้การยอมรับว่าดีที่สุดสำหรับการเขียน Java GUI
การสร้าง Event หรือกำหนดคุณสมบัติอื่น ๆ ของ Form
อ่านวิธีติดตั้ง Netbeans for Java GUI และวิธีการใช้งาน
Netbeans : สร้าง Java GUI ด้วย Netbeans สร้าง Application แบบ Graphic แบบง่าย ๆ
Netbeans : สร้าง Java GUI และการสร้าง Event Action และ Dialog โต้ตอบแบบง่าย ๆ
ส่วนจะเลือกใช้ตัวไหนระหว่าง Netbeans กับ Eclipse ผมได้เขียนคำแนะนำไว้คร่าว ๆ ในหัวข้อ ใช้ตัวไหนดีระหว่าง Netbeans กับ Eclipse ในการเขียน Java GUI
เขียน Java GUI ใช้ Tools อะไรดีระหว่าง Eclipse IDE กับ Netbeans IDE ??
|
ช่วยกันสนับสนุนรักษาเว็บไซต์ความรู้แห่งนี้ไว้ด้วยการสนับสนุน Source Code 2.0 ของทีมงานไทยครีเอท
|
|
|
By : |
ThaiCreate.Com Team (บทความเป็นลิขสิทธิ์ของเว็บไทยครีเอทห้ามนำเผยแพร่ ณ เว็บไซต์อื่น ๆ) |
|
Score Rating : |
![](/images/resource/startrue.gif) ![](/images/resource/startrue.gif) ![](/images/resource/startrue.gif) |
|
|
Create/Update Date : |
2013-08-17 22:05:33 /
2017-03-27 17:22:49 |
|
Download : |
No files |
|
Sponsored Links / Related |
|
|
|
|
|
|
|