Java Desktop Pane (JDesktopPane) - Swing Example |
Java Desktop Pane (JDesktopPane) - Swing Example สำหรับ JDesktopPane (javax.swing.JDesktopPane) จัดอยู่ในกลุ่มของ Container ทำหน้าที่เป็นเหมือน Desktop ในหน้าจอ Windows ที่จะทำหน้าที่แสดงผล Internal Frame หรือสร้าง Frame ย่อยเพื่อแสดงผลภายใน Desktop Pane ซึ่งจะทำหน้าที่เป็น Frame หลัก โดยภายใน Desktop Pane ก็สามารถมี Frame ย่อยหรือ Internal Frame ได้หลาย ๆ Frame เปรียบเสมือนการสร้างหน้าจอ Desktop มาใช้เอง และ มีหน้าต่าง Frame ย่อย ๆ ที่แบ่งออกเป็นหลาย ๆ ส่วน การทำงานก็แตกต่างกันไปขึ้นอยู่กับวัตถุประสงค์
Java Desktop Pane (JDesktopPane) - Swing Example
Syntax
JDesktopPane desktop = new JDesktopPane();
MyInternalFrame frame = new MyInternalFrame();
frame.setVisible(true);
Containers Icon Tools
Icons Tools ของ JDesktopPane
ตอนนี้เรามีไฟล์หลักชื่อว่า MyForm.java และเราจะสร้าง Frame ที่เป็น Internal Frame โดยการ New ไฟล์ขึ้นมาใหม่
เลือกเป็น JInternalFrame
ได้ไฟล์มา 2 ไฟล์ชื่อว่า MyForm.java และ MyInternalFrame.java
ในไฟล์ MyInternalFrame.java ทดสอบสร้าง Label ขึ้นมาง่าย ๆ หรือจะเขียน Code ทั้งหมดดังนี้
Example
MyForm.java
package com.java.myapp;
import java.awt.Dimension;
import java.awt.EventQueue;
import java.awt.Toolkit;
import javax.swing.JDesktopPane;
import javax.swing.JFrame;
public class MyForm extends JFrame {
JDesktopPane desktop;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
MyForm frame = new MyForm();
frame.setVisible(true);
}
});
}
/**
* Create the frame.
*/
public MyForm() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setTitle("ThaiCreate.Com Java GUI Tutorial");
int inset = 50;
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
setBounds(inset, inset, screenSize.width - inset * 2, screenSize.height
- inset * 2);
desktop = new JDesktopPane();
createFrame();
setContentPane(desktop);
desktop.setDragMode(JDesktopPane.OUTLINE_DRAG_MODE);
}
protected void createFrame() {
MyInternalFrame frame = new MyInternalFrame();
frame.setVisible(true);
desktop.add(frame);
try {
frame.setSelected(true);
} catch (Exception e) {
e.printStackTrace();
}
}
}
MyInternalFrame.java
package com.java.myapp;
import java.awt.EventQueue;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
public class MyInternalFrame extends JInternalFrame {
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
MyInternalFrame frame = new MyInternalFrame();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public MyInternalFrame() {
super("Internal Frame",
true, //resizable
true, //closable
true, //maximizable
true);//iconifiable
setBounds(100, 100, 450, 300);
getContentPane().setLayout(null);
JLabel lblNewLabel = new JLabel("ThaiCreate.Com");
lblNewLabel.setBounds(178, 109, 108, 14);
getContentPane().add(lblNewLabel);
}
}
Output
แสดง Frame ที่เป็น Internal Frame อยู่ใน Frame หลัก ที่ทำหน้าที่เป็น Desktop Pane และภายใน Desktop Pane จะสามารถมีได้หลาย Internal Frame ซึ่งจะเหมือนกับ Desktop ที่อยู่บน Windows
Property & Method (Others Related) |
|
ช่วยกันสนับสนุนรักษาเว็บไซต์ความรู้แห่งนี้ไว้ด้วยการสนับสนุน Source Code 2.0 ของทีมงานไทยครีเอท
|
|
|
By : |
ThaiCreate.Com Team (บทความเป็นลิขสิทธิ์ของเว็บไทยครีเอทห้ามนำเผยแพร่ ณ เว็บไซต์อื่น ๆ) |
|
Score Rating : |
|
|
|
Create/Update Date : |
2013-08-18 13:22:27 /
2017-03-27 18:01:04 |
|
Download : |
No files |
|
Sponsored Links / Related |
|
|
|
|
|
|
|