วันจันทร์ที่ 24 กุมภาพันธ์ พ.ศ. 2557

Apache POI autoSizeColumn()

Apache POI autoSizeColumn()

How to set auto column in Java Apache POI

Code Example

HSSFSheet sheet = wb.createSheet();
int column = 0;
sheet.autoSizeColumn(column);


column is a number of column eg 0, 1, 2, 3, ...

yengo หรือ buzzcity

วันศุกร์ที่ 21 กุมภาพันธ์ พ.ศ. 2557

Java GUI การสร้างปุ่มหลายปุ่มแล้วกดปุ่ม มี event หลาย ๆ แบบ

Java GUI การสร้างปุ่มหลายปุ่มแล้วกดปุ่ม มี event หลาย ๆ แบบ

ตัวอย่างนี้เป็นตัวอย่างโค้ดโปรแกรมในการสร้างปุ่มหลาย ๆ ปุ่ม แล้วเมื่อกดปุ่มแล้ว จะมี event ที่ต่างกัน ซึ่งในตัวอย่างสร้างมา 2 ปุ่ม ปุ่มแรกสำหรับแสดงข้อความ alert โดยใช้ JOptionPane อีกปุ่มหนึ่งเมื่อกดแล้วจะทำการปิดโปรแกรมไป

ตัวอย่างโค้ด

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;

public class JavaCodeExam extends JFrame implements ActionListener {

private JFrame frame;

public static void main(String[] args) throws Exception {
new JavaCodeExam();
}

public JavaCodeExam() {
this.frame = new JFrame();
this.frame.setVisible(true);

this.frame.setTitle("Frame By Java Code Exam");
this.frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel panel = new JPanel();

JButton btnAlert = new JButton("Alert");
btnAlert.addActionListener(this);
panel.add(btnAlert);

JButton btnClose = new JButton("Close Windows");
btnClose.addActionListener(this);
panel.add(btnClose);

this.frame.add(panel);
this.frame.pack();
this.frame.setSize(500, 200);
this.frame.setLocation(10, 10);
}

@Override
public void actionPerformed(ActionEvent e) {
if ("Alert".equals(e.getActionCommand())) {
JOptionPane jpn = new JOptionPane();
jpn.showMessageDialog(this.frame, "Java Code Exam");
} else {
// remove the previous JFrame
this.frame.setVisible(false);
this.frame.dispose();
}

}
}

ตัวอย่างนี้คล้าย ๆ กับตัวอย่าง http://javacodeexam.blogspot.com/2014/02/java-gui-frame.html
ซึ่งตัวอย่างนี้จะมีการเพิ่ม ปุ่มเข้ามาอีกปุ่มหนึ่ง เป็นปุ่มสำหรับการ Alert

ใน method actionPerformed จะทำการเช็คว่าเป็น event ของปุ่มไหน ถ้าเป็น event ของปุ่มแรก ก็ทำการ Alert โดยใช้ JOptionPane ส่วนปุ่มที่ 2 ก็ทำการปิดโปรแกรม

ผลลัพธ์ที่ได้


yengo หรือ buzzcity

Java GUI การสร้างปุ่มปิดโปรแกรม เมื่อคลิกแล้วให้ Frame ปิด

Java GUI การสร้างปุ่มปิดโปรแกรม เมื่อคลิกแล้วให้ Frame ปิด

ตัวอย่างโปรแกรมนี้ เรามาสร้างปุ่ม แล้วเมื่อเราคลิกปุ่มที่สร้างแล้ว จะทำการปิด frame

ตัวอย่างโค้ด

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class JavaCodeExam extends JFrame implements ActionListener {

private JFrame frame;

public static void main(String[] args) throws Exception {
new JavaCodeExam();
}

public JavaCodeExam() {
this.frame = new JFrame();
this.frame.setVisible(true);

this.frame.setTitle("Frame By Java Code Exam");
this.frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel panel = new JPanel();

JButton btnClose = new JButton("Close Windows");

btnClose.addActionListener(this);
panel.add(btnClose);

this.frame.add(panel);
this.frame.pack();
this.frame.setSize(500, 200);
this.frame.setLocation(10, 10);
}

@Override
public void actionPerformed(ActionEvent e) {
// remove the previous JFrame
this.frame.setVisible(false);
this.frame.dispose();
}
}

ตัวอย่างนี้สร้างปุ่มปิดโปรแกรม ซึ่งเมื่อคลิกแล้วให้ Frame ปิด

ก่อนอื่น Class ที่เราสร้างขึ้นจะ  extends JFrame และ implements ActionListener

จากนั้นจะสร้างตัวแปร frame ที่เป็น JFrame ไว้เป็นตัวแปรชนิด Object

ใน constructor ได้ทำการสร้าง Object JFrame ไว้ในตัวแปร frame ที่เราได้สร้างไว้ แล้วก็ทำการเซตค่าต่าง ๆ ให้กับ frame

จากนั้นให้เราสร้างปุ่มที่ต้องการที่เมื่อกดแล้วจะให้ปิด frame

ปุ่มที่สร้างขึ้นจะเรียกใช้ addActionListener(this); ส่ง ActionListener เข้าไป ซึ่ง ActionListener ที่ส่งเข้าไปนี้ก็คือตัวของมันเอง this เพราะเราได้ implements ActionListener ไว้แล้ว

Class ที่เราได้ทำการ implements ActionListener นั้น จะมี public abstract void actionPerformed(java.awt.event.ActionEvent arg0); ดังนั้น เราจะต้อง Override method actionPerformed

ใน method actionPerformed เราได้ทำการ this.frame.setVisible(false); และ this.frame.dispose(); เพื่อปิด frame

ผลลัพธ์ที่ได้


yengo หรือ buzzcity

Java GUI การสร้าง Combo Boxes โดยใช้ JComboBox (Using Combo Box)

Java GUI การสร้าง Combo Boxes โดยใช้ JComboBox (Using Combo Box)

ตัวอย่างโค้ดนี้เรามาดูวิธีสร้าง Combo Boxes โดยใช้ JComboBox กันครับ 

ตัวอย่างโค้ด

import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
JFrame frame = new JFrame();
frame.setVisible(true);
frame.setTitle("Frame By Java Code Exam");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel panel = new JPanel();
// panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));

String[] petStrings = { "Bird", "Cat", "Dog", "Rabbit", "Pig"};
JComboBox<String> petList = new JComboBox<String>(petStrings);
panel.add(petList);
   
frame.add(panel);
frame.pack();
frame.setSize(500, 200);
frame.setLocation(10, 10);
}
}

จากตัวอย่างข้างต้น เราได้สร้าง ComboBox โดยใช้ JComboBox ซึ่ง ComboBox นี้มีค่าเป็น String ซึ่งในการสร้างจะรับพารามิเตอร์เป็น Array ของ String ที่ต้องการแสดง

จากนั้นเราก็เอา ComboBox ไปเพิ่มลงใน panel 

จากนั้นเราก็เอา panel ที่มี ComboBox ไปเพิ่มลงใน frame

ผลลัพธ์ที่ได้


yengo หรือ buzzcity

Java GUI การใช้ Radio Buttons ใน Java โดยใช้ JRadioButton (How to Use Radio Buttons)

Java GUI การใช้ Radio Buttons ใน Java โดยใช้ JRadioButton (How to Use Radio Buttons)

เรามาดูวิธีการใช้งาน JRadioButton เพื่อนำไปสร้าง Radio Buttons กันครับ 

ตัวอย่างโค้ด

import javax.swing.BoxLayout;
import javax.swing.ButtonGroup;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JRadioButton;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
JFrame frame = new JFrame();
frame.setVisible(true);
frame.setSize(500, 200);
frame.setLocation(10, 10);
frame.setTitle("Frame By Java Code Exam");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));

JRadioButton radio1 = new JRadioButton("Java Code Exam");
panel.add(radio1);

JRadioButton radio2 = new JRadioButton("Java");
panel.add(radio2);
JRadioButton radio3 = new JRadioButton("codeExam");
panel.add(radio3);

//Group the radio buttons.
   ButtonGroup group = new ButtonGroup();
   group.add(radio1);
   group.add(radio2);
   group.add(radio3);
   
frame.add(panel);
}
}

จากตัวอย่าง เราใช้ JRadioButton ในการสร้าง Radio Buttons ซึ่งในตัวอย่างนี้สร้าง Radio Button อยู่ 3 อัน จากนั้นก็เอาแต่ละอันไปเซ็ตให้กับ panel ที่ได้สร้างไว้ ใน panel ก็เซตตำแหน่งโดยใช้ setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS)); เพื่อให้เรียงบนลงล่าง

จากนั้นเราก็นำ radio มาสร้าง group โดยใช้ ButtonGroup ใน ButtonGroup จะทำการเพิ่ม Radio Button ที่ต้องการให้อยู่ใน group เดียวกัน

ผลลัพท์ที่ได้


yengo หรือ buzzcity

วันพฤหัสบดีที่ 20 กุมภาพันธ์ พ.ศ. 2557

Java GUI การใช้ checkbox โดย JCheckBox (How to Use Check Boxes)

Java GUI การใช้ checkbox โดย JCheckBox (How to Use Check Boxes)

ตัวอย่างนี้เรามาดูวิธีการใช้ Checkbox ในภาษา Java กันครับ ซึ่งในการสร้าง Checkbox นั้นในตัวอย่างนี้จะใช้ JCheckbox ครับ

ตัวอย่างโค้ด

import javax.swing.BoxLayout;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
JFrame frame = new JFrame();
frame.setVisible(true);
frame.setSize(500, 200);
frame.setLocation(10, 10);
frame.setTitle("Frame By Java Code Exam");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));

JCheckBox ck1 = new JCheckBox("Java Code Exam");
panel.add(ck1);

JCheckBox ck2 = new JCheckBox("Java");
panel.add(ck2);
JCheckBox ck3 = new JCheckBox("codeExam");
panel.add(ck3);

frame.add(panel);
}
}

จากตัวอย่างโค้ด ได้สร้าง checkbox จาก JCheckbox ซึ่งสร้างมา 3 อัน แล้วก็สร้าง Panel ขึ้นมาจาก JPanel แล้วนำ Panel ที่ได้ไป add checkbox ที่ทำไว้

ใน panel ได้กำหนด setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS)); เพื่อให้ checkbox เรียงลงมาจากบนลงล่าง

ผลลัพธ์ที่ได้


yengo หรือ buzzcity

Java GUI การใช้ปุ่มโดย JButton (How to Use the Common Button API)

Java GUI การใช้ปุ่มโดย JButton (How to Use the Common Button API)

ตัวอย่างโค้ดโปรแกรมนี้เป็นตัวอย่างการใช้ปุ่มในภาษา Java โดยใช้ JButton ในการสร้างปุ่ม

ตัวอย่างโค้ด

import java.awt.Color;

import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
JFrame frame = new JFrame();
frame.setVisible(true);
frame.setSize(500, 200);
frame.setLocation(10, 10);
frame.setTitle("Frame By Java Code Exam");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel panel = new JPanel();

JButton button = new JButton("Java Code Exam");
panel.add(button);

JButton button2 = new JButton("Java");
button2.setBackground(Color.RED);
panel.add(button2);

JButton button3 = new JButton("CodeExam");
button3.setBorder(BorderFactory.createDashedBorder(Color.red));
panel.add(button3);

frame.add(panel);
}
}

จากตัวอย่างโค้ดข้างบน จะสร้างปุ่ม 3 ปุ่ม 
ปุ่มแรกเป็นธรรมดา 
ปุ่มที่สองมีการเซ็ตสีพื้นหลังให้กับปุ่ม
ปุ่มที่สามมีการเซ็ตขอบให้กับปุ่ม

ซึ่งปุ่มทั้งสามจะอยู่ภายใน panel แล้ว panel จะอยู่ใน frame อีกทีหนึ่ง

ตอนสร้างปุ่ม new JButton เราจะใส่ค่าพารามิเตอร์ ซึ่งค่าที่ใส่เป็น String จะไปแสดงอยู่บนปุ่ม

ดูผลลัพธ์ที่ได้จากรูปด้านล่าง

ผลลัพธ์ที่ได้


yengo หรือ buzzcity

วันจันทร์ที่ 17 กุมภาพันธ์ พ.ศ. 2557

ตัวอย่างโค้ด Java GUI การใส่สีพื้นหลังให้กับ JPanel

ตัวอย่างโค้ด Java GUI การใส่สีพื้นหลังให้กับ JPanel

ตัวอย่างโค้ดนี้เป็นตัวอย่างโค้ด Java GUI การใส่สีพื้นหลังให้กับ JPanel แบบต่าง ๆ

ตัวอย่างโค้ด

import java.awt.Color;

import javax.swing.BorderFactory;
import javax.swing.BoxLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EtchedBorder;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
JFrame frame = new JFrame();
frame.setVisible(true);
frame.setSize(500, 200);
frame.setLocation(10, 10);
frame.setTitle("Frame By Java Code Exam");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel container = new JPanel();
container.setLayout(new BoxLayout(container, BoxLayout.Y_AXIS));

JPanel panel1 = new JPanel();
panel1.setBorder(BorderFactory.createLineBorder(Color.black));
panel1.setBackground(Color.BLACK);
container.add(panel1);

JPanel panel2 = new JPanel();
panel2.setBorder(BorderFactory.createEtchedBorder(EtchedBorder.RAISED));
panel2.setBackground(Color.BLUE);
container.add(panel2);

JPanel panel3 = new JPanel();
panel3.setBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED));
panel3.setBackground(Color.CYAN);
container.add(panel3);

JPanel panel4 = new JPanel();
panel4.setBorder(BorderFactory.createRaisedBevelBorder());
panel4.setBackground(Color.DARK_GRAY);
container.add(panel4);

JPanel panel5 = new JPanel();
panel5.setBorder(BorderFactory.createLoweredBevelBorder());
panel5.setBackground(Color.GREEN);
container.add(panel5);

frame.add(container);
}
}

ตัวอย่างนี้เป็นการใส่สีพื้นหลังให้กับ JPanel โดยวิธีการใส่สีนั้นใส่โดย เรียกใช้ method ที่ชื่อว่า setBackground ใน method นี้จะรับค่าสี

ผลลัพธ์ที่ได้


yengo หรือ buzzcity

ตัวอย่างโค้ด Java GUI การใช้ Border ใน JPanel (How to Use Borders in JPanel)

ตัวอย่างโค้ด Java GUI การใช้ Border ใน JPanel (How to Use Borders in JPanel)

ตัวอย่างนี้เป็นตัวอย่างโค้ด Java GUI การใช้ Border ใน JPanel แบบต่าง ๆ

ตัวอย่างโค้ด

import java.awt.Color;

import javax.swing.BorderFactory;
import javax.swing.BoxLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EtchedBorder;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
JFrame frame = new JFrame();
frame.setVisible(true);
frame.setSize(500, 200);
frame.setLocation(10, 10);
frame.setTitle("Frame By Java Code Exam");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel container = new JPanel();
container.setLayout(new BoxLayout(container, BoxLayout.Y_AXIS));

JPanel panel1 = new JPanel();
panel1.setBorder(BorderFactory.createLineBorder(Color.black));
container.add(panel1);

JPanel panel2 = new JPanel();
panel2.setBorder(BorderFactory.createEtchedBorder(EtchedBorder.RAISED));
container.add(panel2);

JPanel panel3 = new JPanel();
panel3.setBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED));
container.add(panel3);

JPanel panel4 = new JPanel();
panel4.setBorder(BorderFactory.createRaisedBevelBorder());
container.add(panel4);

JPanel panel5 = new JPanel();
panel5.setBorder(BorderFactory.createLoweredBevelBorder());
container.add(panel5);

frame.add(container);
}
}

ตัวอย่างนี้เป็นการใช้ JPanel โดยการใส่ Border แบบต่าง ๆ แล้วนำมาแสดงใน JFrame

การใส่ Border ใน JPanel สามารถใส่ได้โดยเรียกใช้ method ที่ชื่อว่า setBorder ซึ่ง method นี้จะรับพารามิเตอร์ที่เป็น Border Class

ผลลัพธ์ที่ได้


yengo หรือ buzzcity

ตัวอย่างโค้ด Java GUI การเพิ่ม JPanel หลาย ๆ อันใน JFrame

ตัวอย่างโค้ด Java GUI การเพิ่ม JPanel หลาย ๆ อันใน JFrame

ตัวอย่างนี้เป็นการเพิ่ม JPanel หลาย ๆ อันใน JFrame อันเดียว

ตัวอย่างโค้ด

import java.awt.BorderLayout;
import java.awt.Color;

import javax.swing.BorderFactory;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
JFrame frame = new JFrame();
frame.setVisible(true);
frame.setSize(500, 150);
frame.setLocation(10, 10);
frame.setTitle("Frame By Java Code Exam");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel panel1 = new JPanel();
panel1.setBorder(BorderFactory.createLineBorder(Color.black));
panel1.setSize(400, 50);
frame.add(panel1, BorderLayout.NORTH);

JPanel panel2 = new JPanel();
panel2.setBorder(BorderFactory.createLineBorder(Color.blue));
panel2.setSize(400, 50);
frame.add(panel2, BorderLayout.CENTER);

JPanel panel3 = new JPanel();
panel3.setBorder(BorderFactory.createLineBorder(Color.red));
panel3.setSize(400, 50);
frame.add(panel3, BorderLayout.SOUTH);
}
}

ตัวอย่างนี้เป็นการใส่ JPanel หลาย ๆ อันใน Frame อันเดียว

ก่อนอื่นเราก็สร้าง Frame จาก JFrame ก่อน
จากนั้นก็สร้าง Panel โดยใช้ JPanel
ใน JPanel ก็ทำการสร้างกรอกขึ้นมา แล้วก็ใส่ขนาดเข้าไป

เมื่อสร้าง Panel เสร็จก็นำไปเพิ่มใน frame ที่ได้สร้างไว้ โดยใช้ method ที่ชื่อว่า add แล้วก็ทำการใส่ตำแหน่งโดยใช้ BorderLayout

ผลลัพธ์ที่ได้


yengo หรือ buzzcity

ตัวอย่างโค้ด Java GUI การสร้าง Frame โดยใช้ JFrame

ตัวอย่างโค้ด Java GUI การสร้าง Frame โดยใช้ JFrame

ตัวอย่างโค้ดนี้เป็นตัวอย่างการสร้าง Frame โดยใช้ JFrame ในภาษา Java

ตัวอย่างโค้ด

import javax.swing.JFrame;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
JFrame frame = new JFrame();
frame.setVisible(true);
frame.setSize(500, 200);
frame.setLocation(10, 10);
frame.setTitle("Frame By Java Code Exam");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}

ตัวอย่างนี้เป็นตัวอย่างการสร้าง Frame โดยใช้ JFrame
ตัวอย่างการ set ค่าต่าง ๆ ให้กับ Frame

- setVisible เกี่ยวกับการแสดงผล (Shows or hides this Window depending on the value of parameter)
- setSize ใส่ขนาดให้กับ Frame (This method changes layout-related information, and therefore, invalidates the component hierarchy)
- setLocation ใส่ตำแหน่งของการแสดง (Moves this component to a new location. The top-left corner of the new location is specified by the x and y parameters in the coordinate space of this component's parent)
- setTitle ใส่ค่า title ให้กับ Frame (Sets the title for this frame to the specified string)
- setDefaultCloseOperation เซตค่า default เมื่อกดปุ่มปิด (Sets the operation that will happen by default when the user initiates a "close" on this frame. You must specify one of the following choices)

ผลลัพธ์ที่ได้


yengo หรือ buzzcity

ตัวอย่างโค้ด Java GUI การสร้าง Select โดยใช้ JOptionPane

ตัวอย่างโค้ด Java GUI การสร้าง Select โดยใช้ JOptionPane

ตัวอย่างนี้เป็นตัวอย่างโค้ด Java GUI ตัวอย่างโค้ดการสร้าง Select  โดยใช้ JOptionPane ซึ่งจะเรียก method showInputDialog

ตัวอย่างโค้ด

import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
JFrame frame = new JFrame();
Object[] possibilities = { "Red", "White", "Green" };
String s = (String)JOptionPane.showInputDialog(frame,
"Select Color:\n" + "\"You like Color...\"",
"Color", JOptionPane.PLAIN_MESSAGE, null,
possibilities, possibilities[1]);

System.out.println(s);
}
}

ตัวอย่างนี้ จะสร้าง Array ที่เป็น Object ไว้ก่อน จากนั้น จะเรียกใช้ JOptionPane แล้วเรียกใช้ showDialog ใส่ JFrame เข้าไป จากนั้นใส่ค่าที่แสดง แล้วก็ใส่ title จากนั้นก็ใส่ message Type แล้วก็ใส่ ICON จากนั้นใส่ค่า Option ที่ได้สร้างไว้ แล้วก็ใส่ค่าเริ่มต้นให้กับ Select

ผลลัพธ์ที่ได้


yengo หรือ buzzcity

ตัวอย่างการใช้ showOptionDialog ใน JOptionPane

ตัวอย่างการใช้ showOptionDialog ใน JOptionPane

ตัวอย่างนี้เป็นตัวอย่างการใช้ JOptionPane ซึ่งใช้สำหรับแสดง Dialog ซึ่งเป็นแบบ Option ให้เลือก

ตัวอย่างโค้ด

import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
JFrame frame = new JFrame();
// Custom button text
Object[] options = {"Yes", "No", "I dont Know"};
int n = JOptionPane.showOptionDialog(frame, "are you human?", "Question",
JOptionPane.YES_NO_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE, null, options, options[0]);

System.out.println(options[n]);
}
}

จากตัวอย่างการสร้าง Array ที่เป็นชนิด Object แล้วใส่ค่า Option ที่ต้องการให้เลือกเอาไว้ จากนั้นก็ทำการเรียก JOptionPane แล้วก็เรียก method showOptionDialog แล้วใส่ค่า frame ตามด้วย ค่าที่ต้องการแสดง ตามด้วย title ตามด้วย option Type ตามด้วย message Type ที่ต้องการ ตามด้วย Icon แล้วตามด้วย Option ที่เราได้สร้างขึ้น สุดท้ายใส่ค่าเริ่มต้นที่ต้องการ

ผลลัพธ์ที่ได้


yengo หรือ buzzcity

วันเสาร์ที่ 15 กุมภาพันธ์ พ.ศ. 2557

การใส่ค่า Score ทาง Input Dialog แล้วแสดงออกทาง Message Dialog โดยใช้ JOptionPane

การใส่ค่า Score ทาง Input Dialog แล้วแสดงออกทาง Message Dialog โดยใช้ JOptionPane

ตัวอย่างนี้เป็นการใช้ JOptionPane เพื่อรับค่าทางและแสดงค่า โดยการรับค่านั้นจะรับค่าโดยใช้ JOptionPane.showInputDialog ส่วนการแสดงค่านั้นจะแสดงค่าโดยใช้ JOptionPane.showMessageDialog

ตัวอย่างโค้ด

import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
JFrame frame = new JFrame();
String score = JOptionPane.showInputDialog("Input Your Score : ");
JOptionPane.showMessageDialog(frame, "Your Score : " + score);
}
}

ผลลัพธ์ที่ได้





yengo หรือ buzzcity

โชว์ Message Dialog โดยใช้ JOptionPane

โชว์ Message Dialog โดยใช้ JOptionPane

ตัวอย่างนี้ เรามาดูการโชว์ Message Dialog โดยใช้ JOptionPane กันครับ

ตัวอย่างโค้ด

import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
JFrame frame = new JFrame();
JOptionPane.showMessageDialog(frame, "Java Code Exam");
}
}

ผลลัพธ์ที่ได้


yengo หรือ buzzcity

ตัวอย่างโค้ดโปรแกรมดึงค่าจำนวนที่มากกว่า 0 ออกมาจาก Array

ตัวอย่างโค้ดโปรแกรมดึงค่าจำนวนที่มากกว่า 0 ออกมาจาก Array

ตัวอย่างโค้ดโปรแกรมนี้เป็นตัวอย่างโค้ดโปรแกรมดึงค่าจำนวนที่มากกว่า 0 ออกมาจาก Array

ตัวอย่างโค้ด

import java.util.ArrayList;
import java.util.Arrays;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
int[] a = new int[] { 2, 3, -4, 5, -3 };
int[] b = getOnlyPositive(a);

System.out.println(Arrays.toString(a));
System.out.println(Arrays.toString(b));
}

public static int[] getOnlyPositive(int[] a){
ArrayList<Integer> positiveArry = new ArrayList<Integer>();
for (int i = 0; i < a.length; i++) {
if(a[i] > 0) positiveArry.add(a[i]);
}
int[] b = new int[positiveArry.size()];
for (int i = 0; i < positiveArry.size(); i++) {
b[i] = positiveArry.get(i);
}
return b;
}
}

yengo หรือ buzzcity

วันศุกร์ที่ 14 กุมภาพันธ์ พ.ศ. 2557

ตัวอย่างโค้ดเมท็อดสลับข้อมูลสองตัวในอาเรย์

ตัวอย่างโค้ดเมท็อดสลับข้อมูลสองตัวในอาเรย์

ตัวอย่างโค้ดโปรแกรมนี้เป็นตัวอย่างการสร้างเมท็อด (method) เพื่อสลับค่าใน Array

ตัวอย่างโค้ด

import java.util.Arrays;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
int[] a = new int[] { 2, 3, 4, 5 };
System.out.println(Arrays.toString(a));
swap(a, 1, 2);
System.out.println(Arrays.toString(a));
}

public static void swap(int[] d, int i, int j) {
int t = d[i];
d[i] = d[j];
d[j] = t;
}
}

yengo หรือ buzzcity

วันพฤหัสบดีที่ 13 กุมภาพันธ์ พ.ศ. 2557

ตัวอย่างเมท็อดค้นข้อมูลในอาเรย์

ตัวอย่างเมท็อดค้นข้อมูลในอาเรย์

ตัวอย่างโค้ดโปรแกรมนี้เป็นตัวอย่างการสร้างเมท็อด (method) สำหรับค้นข้อมูลในอาเรย์ (Array) ซึ่งเมท็อดนี้จะรับค่า array และก็ตัวค้น

ตัวอย่างโค้ด

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
String[] a = new String[]{"a", "A", "b", "c"};
System.out.println("A Text is " + search(a, "A"));
System.out.println("a Text is " + search(a, "a"));
System.out.println("d Text is " + search(a, "d"));
System.out.println("c Text is " + search(a, "c"));
}

public static int search(String[] s, String x) {
for (int i = 0; i < s.length; i++) {
if (s[i].equals(x))
return i;
}
return -1;
}
}

yengo หรือ buzzcity

วันพุธที่ 12 กุมภาพันธ์ พ.ศ. 2557

ตัวอย่างเมท็อดแปลงเลขวันของสัปดาห์เป็นชื่อ

ตัวอย่างเมท็อดแปลงเลขวันของสัปดาห์เป็นชื่อ

ตัวอย่างโปรแกรมนี้เป็นการแปลงเลขวันของสัปดาห์เป็นชื่อวันในภาษาไทย

ตัวอย่างโค้ด

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
for (int i = 0; i < 9; i++) {
System.out.println(i + " Text is " + getDayOfWeek(i));
}
}

public static String getDayOfWeek(int d) {
if (d < 0 || d > 6) return "No Day";
String[] dow = new String[7];
dow[0] = "เสาร์";
dow[1] = "อาทิตย์";
dow[2] = "จันทร์";
dow[3] = "อังคาร";
dow[4] = "พุธ";
dow[5] = "พฤหัสบดี";
dow[6] = "ศุกร์";
return dow[d];
}
}

ผลลัพธ์ที่ได้

0 Text is เสาร์
1 Text is อาทิตย์
2 Text is จันทร์
3 Text is อังคาร
4 Text is พุธ
5 Text is พฤหัสบดี
6 Text is ศุกร์
7 Text is No Day
8 Text is No Day

yengo หรือ buzzcity

วันอังคารที่ 11 กุมภาพันธ์ พ.ศ. 2557

ตัวอย่างโค้ดโปรแกรมแปลงตัวเลข 0 - 9 เป็นคำภาษาไทย

ตัวอย่างโค้ดโปรแกรมแปลงตัวเลข 0 - 9 เป็นคำภาษาไทย

ตัวอย่างนี้เป็นตัวอย่างโค้ดในการแปลงตัวเลขจากเลข 0-9 ให้เป็นคำภาษาไทย

ตัวอย่างโค้ด

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
for (int i = 0; i < 9; i++) {
System.out.println(i + " Text is " + digit2text(i));
}
}

public static String digit2text(int digit) {
String text = "";
if (digit == 0)
text = "ศูนย์";
else if (digit == 1)
text = "หนึ่ง";
else if (digit == 2)
text = "สอง";
else if (digit == 3)
text = "สาม";
else if (digit == 4)
text = "สี่";
else if (digit == 5)
text = "ห้า";
else if (digit == 6)
text = "หก";
else if (digit == 7)
text = "เจ็ด";
else if (digit == 8)
text = "แปด";
else if (digit == 9)
text = "เก้า";
else
text = "";
return text;
}
}

ผลลัพธ์ที่ได้

0 Text is ศูนย์
1 Text is หนึ่ง
2 Text is สอง
3 Text is สาม
4 Text is สี่
5 Text is ห้า
6 Text is หก
7 Text is เจ็ด
8 Text is แปด

yengo หรือ buzzcity

วันจันทร์ที่ 10 กุมภาพันธ์ พ.ศ. 2557

โปรแกรมเช็ควันในเดือนกุมภาพันธ์ว่ามี 28 หรือ 29 วัน

โปรแกรมเช็ควันในเดือนกุมภาพันธ์ว่ามี 28 หรือ 29 วัน

ตัวอย่างโค้ดโปรแกรมนี้เป็นการหาว่าเดือนกุมภาพันธ์ในปี 2008 ว่ามีกี่วัน

ตัวอย่างโค้ด

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
int year = 2008;
if (year % 400 == 0 || year % 4 == 0 && year % 100 != 0) {
System.out.println("year " + year + " is " + 29 + " day");
} else {
System.out.println("year " + year + " id " + 28 + " day");
}
}
}

yengo หรือ buzzcity

วันอาทิตย์ที่ 9 กุมภาพันธ์ พ.ศ. 2557

ตัวอย่างโค้ดโปรแกรมหารากที่สองของสมการกำลังสอง ax2 + bx + c = 0

ตัวอย่างโค้ดโปรแกรมหารากที่สองของสมการกำลังสอง ax2 + bx + c = 0

ตัวอย่างโปรแกรมนี้เป็นตัวอย่างโค้ดโปรแกรมคำนวณหาผลลัพธ์ของสมการกำลังสอง

ตัวอย่างโค้ด

import java.util.Scanner;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
Scanner in = new Scanner(System.in);
System.out.print("a = ");
   double a = in.nextDouble();
   System.out.print("b = ");
   double b = in.nextDouble();
   System.out.print("c = ");
   double c = in.nextDouble();
   double r1 = ((-b) + Math.sqrt((b*b) - (4*a*c))) / (2*a);
   double r2 = ((-b) - Math.sqrt((b*b) - (4*a*c))) / (2*a);
   System.out.print("รากของสมการคือ ");
   System.out.println(r1 + ", " + r2);
}
}

yengo หรือ buzzcity

วันเสาร์ที่ 8 กุมภาพันธ์ พ.ศ. 2557

โปรแกรมคำนวณดัชนีมวลกาย

โปรแกรมคำนวณดัชนีมวลกาย

ดัชนีมวลกาย คือค่าที่บอกว่าตัวเรานั้นมีร่างกายสมบูรณ์หรือไม่ เช่น อ้วน ผอม สมบูรณ์

ตัวอย่างโค้ด

import java.util.Scanner;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
Scanner in = new Scanner(System.in);
System.out.print("น้ำหนัก (kg.) = ");
double weight = in.nextDouble();
System.out.print("ความสูง (cm.) = ");
double height = in.nextDouble();
double hm = height / 100.0;
double bmi = weight / (hm * hm);
System.out.println("ดัชนีมวลกาย = " + bmi);
}
}

yengo หรือ buzzcity

วันศุกร์ที่ 7 กุมภาพันธ์ พ.ศ. 2557

ตัวอย่างโค้ดโปรแกรมแสดงดอกจันทร์เป็นรูปพีระมิด

ตัวอย่างโค้ดโปรแกรมแสดงดอกจันทร์เป็นรูปพีระมิด

ตัวอย่างโปรแกรมนี้เป็นการแสดงดอกจันทร์ โดยให้เป็นรูปพีระมิด

ตัวอย่างโค้ดโปรแกรม

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
int base = 15;
int numShow = 0;
int numStart = 0;
for (int i = 1; i <= base; i++) {
for (int j = 1; j <= base; j++) {
if(i <= base/2){
numShow = 2*i - 1;
numStart = base/2 - i + 2;
if(j >= numStart && j <= numShow + numStart - 1){
System.out.print("*");
}
else{
System.out.print(" ");
}
}
else if(i >= base/2){
numShow = -1*2*i + 31;
numStart = (base/2 - i) * -1;
if(j >= numStart && j <= numShow + numStart - 1){
System.out.print("*");
}
else{
System.out.print(" ");
}
}
else{
System.out.print("*");
}
}
System.out.println();
}
}
}

ผลลัพธ์ที่ได้

       *       
      ***      
     *****     
    *******    
   *********   
  ***********  
 ************* 
***************
 ************* 
  ***********  
   *********   
    *******    
     *****     
      ***      
       *       

yengo หรือ buzzcity

วันพฤหัสบดีที่ 6 กุมภาพันธ์ พ.ศ. 2557

ตัวอย่างโค้ดโปรแกรมแสดงดอกจันทร์แนวนอน

ตัวอย่างโค้ดโปรแกรมแสดงดอกจันทร์แนวนอน

ตัวอย่างโค้ดโปรแกรมตัวอย่างนี้ เป็นโค้ดโปรแกรมแสดงดอกจันทร์แนวนอน

ตัวอย่างโค้ดโปรแกรม

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
int base = 15;
int numShow = 0;
for (int i = 1; i <= base; i++) {
for (int j = 1; j <= base; j++) {
if(i <= base/2){
numShow = 2*i - 1;
if(j <= numShow){
System.out.print("*");
}
else{
System.out.print(" ");
}
}
else if(i >= base/2){
numShow = -1*2*i + 31;
if(j <= numShow){
System.out.print("*");
}
else{
System.out.print(" ");
}
}
else{
System.out.print("*");
}
}
System.out.println();
}
}
}

ผลลัพธ์ที่ได้


*              
***            
*****          
*******        
*********      
***********    
*************  
***************
*************  
***********    
*********      
*******        
*****          
***            
*              

yengo หรือ buzzcity

วันพุธที่ 5 กุมภาพันธ์ พ.ศ. 2557

โปรแกรมรับค่า แล้วแสดงว่าเป็นเลขคู่หรือเลขคี่

โปรแกรมรับค่า แล้วแสดงว่าเป็นเลขคู่หรือเลขคี่

ตัวอย่างโค้ดรับค่าตัวเลขจากคีบอร์ด จากนั้นก็แสดงว่าตัวเลขที่ป้อนเข้ามานั้นเป็นเลขคู่หรือเลขคี่

ตัวอย่างโค้ด


import java.util.Scanner;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
Scanner in = new Scanner(System.in);
System.out.print("Input Number : ");
int num = in.nextInt();
if(num % 2 == 0){
System.out.println("Number is Old");
}
else{
System.out.println("Number is Even");
}
}
}

yengo หรือ buzzcity

วันอังคารที่ 4 กุมภาพันธ์ พ.ศ. 2557

ตัวอย่างโค้ดโปรแกรมนับเวลาถอยหลัง

ตัวอย่างโค้ดโปรแกรมนับเวลาถอยหลัง

ตัวอย่างโค้ดนี้เป็นตัวอย่างโปรแกรมนับถอยหลัง โดยกรอกเวลาที่ต้องการนับถอยหลัง จากนั้นโปรแกรมจะค่อย ๆ นับถอยหลังไปเรื่อย ๆ จนถึง 0 ซึ่งการนับถอยหลังแต่ละครั้ง จะหน่วงเวลาไว้ 1 sec

ตัวอย่างโค้ด

import java.util.Scanner;

public class JavaCodeExam {
public static void main(String[] args) throws Exception {
Scanner in = new Scanner(System.in);
System.out.print("Input Time : ");
int time = in.nextInt();
for (int i = time; i >= 0; i--) {
Thread.sleep(1000);
System.out.print(i + " ");
}
Thread.sleep(1000);
System.out.println("Success");
}
}

yengo หรือ buzzcity

วันจันทร์ที่ 3 กุมภาพันธ์ พ.ศ. 2557

ตัวอย่างโค้ดโปรแกรมการแรนดอม(random)ตัวเลข แรนดอมเลข 0-10 เลข 1-5 และตัวเลข 13-18

ตัวอย่างโค้ดโปรแกรมการแรนดอม(random)ตัวเลข แรนดอมเลข 0-10 เลข 1-5 และตัวเลข 13-18

ตัวอย่างนี้เป็นตัวอย่างโค้ดการแรนดอมตัวเลข ซึ่งตัวอย่างนี้จะเป็นตัวอย่างการแรนดอมตัวเลข 0-10 ตัวเลข 1-5 และตัวเลข 13-18

การแรนดอมตัวเลข มีรูปแบบมาตรฐานดังนี้ Min + (int)(Math.random() * ((Max - Min) + 1))

ตัวอย่างโค้ดโปรแกรม

public class JavaCodeExam {
public static void main(String[] args) {
// standard random = Min + (int)(Math.random() * ((Max - Min) + 1))
// random 0 - 10
int numberLandom;
for (int i = 0; i < 100; i++) {
numberLandom = (int)(Math.random() * (11));
System.out.print(numberLandom);
System.out.print(",");
}
System.out.println();
// random 1 - 5
for (int i = 0; i < 100; i++) {
numberLandom = 1 + (int)(Math.random() * (5));
System.out.print(numberLandom);
System.out.print(",");
}
System.out.println();
// random 13 - 18
for (int i = 0; i < 100; i++) {
numberLandom = 13 + (int)(Math.random() * (6));
System.out.print(numberLandom);
System.out.print(",");
}
}
}

yengo หรือ buzzcity

วันอาทิตย์ที่ 2 กุมภาพันธ์ พ.ศ. 2557

ตัวอย่างโค้ดโปรแกรมเช็คข้อความว่า ข้อความมีความยาวเท่ากันหรือเปล่า

ตัวอย่างโค้ดโปรแกรมเช็คข้อความว่า ข้อความมีความยาวเท่ากันหรือเปล่า

โปรแกรมนี้ จะทำการเช็คข้อความว่าข้อความมีความยาวของขนาดข้อความเท่ากันหรือเปล่า

ตัวอย่างโค้ด

public class JavaCodeExam {
public static void main(String[] args) {
String message1 = "javacodeexam.blogspot.com";
String message2 = "javacodeexam.blogspot";
String message3 = "javacodeexam.blogspot.com";
System.out.println("message1 equal message 2 : " + checkLength(message1, message2));
System.out.println("message2 equal message 3 : " + checkLength(message2, message3));
System.out.println("message3 equal message 1 : " + checkLength(message3, message1));
}
public static String checkLength(String m1, String m2){
if(m1.length() == m2.length()) return "Equal";
return "Not Equal";
}
}

ผลลัพธ์ที่ได้

message1 equal message 2 : Not Equal
message2 equal message 3 : Not Equal
message3 equal message 1 : Equal

yengo หรือ buzzcity

วันเสาร์ที่ 1 กุมภาพันธ์ พ.ศ. 2557

ตัวอย่างโค้ดโปรแกรมลบตัวอักษรจากตัวหลังสุดทีละตัว

ตัวอย่างโค้ดโปรแกรมลบตัวอักษรจากตัวหลังสุดทีละตัว

ตัวอย่างโค้ดนี้เป็นตัวอย่างโปรแกรมที่ลบตัวอักษรจากตัวหลังสุดทีละตัวมาเรื่อย ๆ

ตัวอย่างโค้ดโปรแกรม

public class JavaCodeExam {
public static void main(String[] args) {
String message = "javacodeexam.blogspot.com";
char[] messageChar = message.toCharArray();
for (int i = messageChar.length - 1; i >= 0; i--) {
for (int j = 0; j <= i; j++) {
System.out.print(messageChar[j]);
}
System.out.println();
}
}
}

ผลลัพธ์ที่ได้

javacodeexam.blogspot.com
javacodeexam.blogspot.co
javacodeexam.blogspot.c
javacodeexam.blogspot.
javacodeexam.blogspot
javacodeexam.blogspo
javacodeexam.blogsp
javacodeexam.blogs
javacodeexam.blog
javacodeexam.blo
javacodeexam.bl
javacodeexam.b
javacodeexam.
javacodeexam
javacodeexa
javacodeex
javacodee
javacode
javacod
javaco
javac
java
jav
ja
j

yengo หรือ buzzcity