พื้นฐาน Form และ GUI : JTextField , JLabel , JButton เพื่อรับข้อมูลและแสดงข้อมูล |
พื้นฐาน Form และ GUI : JTextField , JLabel , JButton เพื่อรับข้อมูลและแสดงข้อมูล ในบทความนี้เราจะม่เรียนรู้เกี่ยวกับ Java GUI และ Component Controls พื้นฐาน ที่เราจะได้ใช้งานบ่อยที่สุด ไว้สำหรับการ แสดงค่า รับค่า และกระทำเงื่อนไขต่าง ๆ ซึ่งได้แก่ Text Field (JTextField) , Label (JLabel) และ Button (JButton) ซึ่งรูปแบบทั้ง 3 ตัวนี้ มีรูปแบบการใช้งานที่ง่าย ๆ ทั้งที่เป็นการเขียน Code หรือจะใช้ผ่าน Visual GUI
TextField (JTextField)
JTextField txt = new JTextField();
txt.getText(); // for get Text
txt.setText(String); for set Text
Label (JLabel)
JLabel lbl = new JLabel();
lbl.getText(); // for get Text
lbl.setText(String); for set Text
Button (JButton)
JButton btn = new JButton();
btn.getText(); // for get Text
btn.setText(String); for set Text
btn.addActionListener(new ActionListener() { // for create Event
public void actionPerformed(ActionEvent e) {
// Event
}
});
Example ตัวอย่างการสร้าง Input TextField และ Button โดยนำค่าบวกกัน และแสดงผลลัพธ์ออกทาง Label
MyForm.java
package com.java.myapp;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
public class MyForm extends JFrame {
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
MyForm form = new MyForm();
form.setVisible(true);
}
});
}
public MyForm() {
// Create Form Frame
super("ThaiCreate.Com Tutorial");
setSize(450, 300);
setLocation(500, 280);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
getContentPane().setLayout(null);
// Input A
final JTextField numA = new JTextField();
numA.setBounds(27, 26, 62, 20);
getContentPane().add(numA);
// Label +
JLabel label = new JLabel("+");
label.setBounds(99, 29, 13, 14);
getContentPane().add(label);
// Input B
final JTextField numB = new JTextField();
numB.setBounds(122, 26, 62, 20);
getContentPane().add(numB);
// Label Result
final JLabel lblResult = new JLabel("Result");
lblResult.setBounds(27, 68, 85, 14);
getContentPane().add(lblResult);
// Button Sum
JButton btnSum = new JButton("Sum");
btnSum.setBounds(194, 25, 65, 23);
btnSum.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
double intA = Double.valueOf(numA.getText()); // get from Input
double intB = Double.valueOf(numB.getText()); // get from Input
double intSum = 0;
intSum = intA + intB;
lblResult.setText(String.valueOf(intSum)); // assign value
}
});
getContentPane().add(btnSum);
}
}
Output
Screenshot
Input ค่าแล้วกด Sum
|