ໂປຣແກຣມ
GUI ຂອງພາສາຈາວາຈະຈັດວາງສ່ວນປະກອບກຣາບຟິກຕ່າງໆ
ລົງໃນອອບເຈັກຂອງຄາດປະເພດ Container ໂດຍອັດຕະໂນມັດ
ທັງນີ້ຈະກຳນົດຂະໜາດແລະຕຳແໜ່ງຂອງສ່ວນປະກອບກຣາບຟິກໄດ້ໂດຍໃຊ້ອອບເຈັກຂອງຄາດປະເພດ
LayoutManager ເຊິ່ງ LayoutManager ເປັນອິນເຕີເຟດທີ່ໃຊ້ໃນການກຳນົດວິທີການຈັດວາງຜັງສ່ວນປະກອບກຣາບຟິກ
ພາສາຈາວາໄດ້ກຳນົດໃຫ້ມີຄາດທີ່ implements ອິນເຕີເຟດທີ່ຊື່ LayoutManager
ເພື່ອໃຊ້ເປັນຕົວຈັດວາງຜັງຂອງສ່ວນປະກອບກຣາບຟິກທັງໝົດຂອງຄາດຄື
1. BoderLayout
2. FlowLayout
3. GridLayout
4. CardLayout
5. GridBagLayout
ໂປຣແກຣມທີ
5.2 ຄາດJFrameSample
ຮູບທີ 5.8
ຜົນລັບທີ່ໄດ້ຈາກການລັນໂປຣແກຣມທີ 5.2
ການກຳນົດວິທີການວາງຜັງຂອງອອບເຈັກຂອງຄາດປະເພດ Container
ຈະທຳໄດ້ໂດຍການສ້າງອອບເຈັກປະເພດ LayoutManager ຂອງຄາດໃດຄາດໜຶ່ງໃນຫ້າຄາດທາງເທີງ
ຈາກນັ້ນເຮົາສາມາດທີ່ຈະກຳນົດການວາງຜັງໂດຍການເອີ້ນໃຊ້ເມທອດ setLayout
() ຂອງຄາດປະເພດ Container ໂດຍສົ່ງຜ່ານ argument ທີ່ເປັນອອບເຈັກປະເພດ LayoutManager
ທີ່ສ້າງຂຶ້ນມາ ຕົວຢຢ່າງເຊັ່ນຄຳສັ່ງ
JFrame fr = new JFrame(“Demo”);
FlowLayout fl = new FlowLayout();
fr.setLayout(fl);
ເປັນການກຳນົດໃຫ້ອອບເຈັກຂອງຄາດ JFrame ທີຊື່ fr
ເຊິ່ງມີວິທີການຈັດວາງຜັງໃນຮູບແບບຂອງ FlowLayout
ເນື່ອງຈາກຄຳສັ່ງໃນຕົວຢ່າງທາງເທິງຈະບໍ່ມີການນຳອອບເຈັກ fl
ເຊິ່ງເປັນອອບເຈັກຂອງຄາດ FlowLayout ໄປອ້າງອີງໃນຄຳສັ່ງອື່ນໆ
ດັ່ງນັ້ນເຮົາຈຶ່ງສາມາດທີ່ຈະຂຽນຄຳສັ່ງໃນການສ້າງອອບເຈັກແລະຄຳສັ່ງກຳນົດຮູບແບບການວາງຜັງພາຍໃນຄຳສັ່ງດຽວກັນໄດ້ດັ່ງນີ້
fr.setLayout(new FlowLayout());
ໂດຍທົ່ວໄປຄາດປະເພດ Container ແຕ່ລະຊະນິດ
ຈະມີການກຳນົດວິທີການວາງຜັງຂອງອອບເຈັກຂອງຄາດແຕ່ລະຊະນິດໄວ້ເລີ່ມຕົ້ນຢູ່ແລ້ວດັ່ງນີ້
- ຄາດ JWindow, JFrame ແລະ
JDialog ຈະກຳນົດໃຫ້ເປັນ BorderLayout
- ຄາດ JPanel ແລະ JApple ຈະກຳນົດໃຫ້ເປັນ
FlowLayout
5.3.1 BorderLayout
BorderLayout ເປັນການຈັດວາງຜັງກຳນົດໃຫ້ສາມາດວາງອອບເຈັກຂອງຄາດທີ່ເປັນສ່ວນປະກອບກຣາບຟິກໄດ້
5 ອອບເຈັກຕາມຕຳແໜ່ງທິດຕ່າງໆ ຂອງອອບເຈັກປະເພດ Container 5ຕຳແໜ່ງຄື
ທິດເໜືອ (NORTH) ທິດໃຕ້ (SOUTH) ທິດຕະເວັນອອກ (EAST) ທິດຕາເວັນຕົກ(WEST)
ແລະບ່ອນກາງ (CENTER)
ເຊິ່ງອອບເຈັກທີ່ເປັນສ່ວນປະກອບກຣາບຟິກຈະຖືກໃສ່ໃນຕຳແໜ່ງທິດຕ່າງໆ
ໂດຍຈະມີການກຳນົດຂະໜາດໃຫ້ໂດຍອັດຕະໂນມັດ
ໂປຣແກຣມທີ 5.3 ສະແດງຕົວຢ່າງໂປຣແກຣມ
GUI ທີ່ປະກອບໄປດ້ວຍປຸ່ມ 5 ປຸ່ມ ໂດຍໄດ້ສ້າງອອບເຈັກຂອງຄາດ JButton
ຂຶ້ນມາ 5 ອອບເຈັກເຊິ່ງມີຊື່ເປັນ bn1 ຈົນເຖິງ bn5
ແລະມີຂໍ້ຄວາມເທິງປຸ່ມເປັນ B1 ຈົນເຖິງ B5
ຕາມລຳດັບຈາກນັ້ນໄດ້ໃສ່ອອບເຈັກຊະນິດ JButton
ແຕ່ລະຕົວລົງໄປໃນອອບເຈັກຊະນິດ JFrame ທີ່ຊື່ fr ໂດຍໃຊ້ເມທອດ add()
ຕາມຕຳແໜ່ງທິດຕ່າງໆ ໂດຍທີ່ອອບເຈັກ bn1 ຈະຢູ່ທາງທິດເໜືອ ອອບເຈັກ bn2 ຈະຢຸ່ທາງທິດໃຕ້
ອອບເຈັກ bn3 ຈະຢູ່ທາງທິດຕາເວັນອອກ ອອບເຈັກ bn4 ຈະຢູ່ທາງທິດຕາເວັນຕົກ
ແລະອອບເຈັກ bn5 ຈະຢູ່ບ່ອນກາງ ເຊິ່ງໂປຣແກຣມນີ້ຈະໃຫ້ຜົນລັບດັ່ງສະແດງໃນຮູບທີ
5.9
ການໃຊ້ເມທອດ add()
ໃນກໍລະນີອອບເຈັກປະເພດ Container ມີການຈັດວາງຜັງແບບ BorderLayout
ນັ້ນຈະຕ້ອງມີ argument
ເພື່ອລະບຸຕຳແໜ່ງທິດທີ່ຕ້ອງການວາງອອບເຈັກທີ່ເປັນສ່ວນປະກອບກຣາບຟິກເຊັ່ນ
ຄຳສັ່ງ
fr.add(bn1,BorberLayout.NORTH);
ເປັນຄຳສັ່ງທີ່ໃຊໃນການໃສ່ອອບເຈັກ
bn1 ລົງໃນ Jframe ໃນຕຳແໜ່ງທິດເໜືອ
ກໍລະນີເອີ້ນໃຊ້ເມທອດ add ()
ໂດຍບໍ່ສົ່ງຜ່ານ argument
ເພື່ອລະບຸຕຳແໜ່ງທິດທີ່ຕ້ອງການວາງອອບເຈັກທີ່ເປັນສ່ວນປະກອບກຣາບຟິກນັ້ນ
ພາສາຈາວາຈະຖືວ່າເປັນການກຳນົດໃຫ້ໃສ່ສ່ວນປະກອບກຣາບຟິກໄວ້ຕຳແໜ່ງບ່ອນກາງຂອງອອບເຈັກຂອງຄາດປະເພດ
Container ເຊັ່ນ ຄຳສັ່ງ
fr.add(bn1);
ຈະຖືວ່າເປັນຄຳສັ່ງເຊັ່ນດຽວກັບຄຳສັ່ງ
fr.add(bn1,BorderLayout.CENTER);
ໂປຣແກຣມທີ
5.3 ຕົວຢ່າງການໃຊ້ຕົວຈັດວາງແບບຜັງແບບ BorderLayout
ຮູບທີ 5.9
ຜົນລັບທີ່ໄດ້ຈາກການລັນໂປຣແກຣມທີ 5.3
ການປັບຂະໜາດຂອງອອບເຈັກຂອງຄາດປະເພດ
Container ຈະມີຜົນເຮັດໃຫ້ຂະໜາດຂອງອອບເຈັກສ່ວນປະກອບກຣາບຟິກ
ປ່ຽນແປງໄປຕາມຂະໜາດຂອງອອບເຈັກຂອງຄາດປະເພດ Container ດັ່ງນີ້
- ອອບເຈັກຂອງສ່ວນປະກອບກຣາບຟິກທີ່ຢູ່ຕຳແໜ່ງທິດເໜືອ
ໃຕ້ ແລະບ່ອນກາງ ຈະປັບຂະໜາດຕາມຂະໜາດຂອງອອບເຈັກຂອງຄາດປະເພດ Container
ຕາມແນວນອນ ດັ່ງສະແດງໃນຮູບທີ 5.10(ກ)
- ອອບເຈັກຂອງສ່ວນປະກອບກຣາບຟິກທີ່ຢູ່ຕຳແໜ່ງທິດຕາເວັນອອກ
ຕາເວັນຕົກ ແລະບ່ອນກາງ
ຈະປັບຂະໜາດຕາມຂະໜາດຂອງອອບເຈັກຂອງຄາດປະເພດ Container ຕາມແນວນອນ
ດັ່ງສະແດງໃນຮູບທີ 5.10(ຂ)
(ກ) ແນວນອນ (ຂ) ແນຕັ້ງ
ຮູບທີ 5.10
ຂະໜາດຂອງອອບເຈັກທີ່ຖືກປັບ
5.3.2
FlowLayout
FlowLayout
ເປັນການຈັດວາງຜັງສ່ວນປະກອບກຣາບຟິກໄວ້ຕຳແໜ່ງເທິງສຸດຂອງອອບເຈັກຂອງຄາດປະເພດ
Container ໂດຍຈະລຽງອອບເຈັກຂອງຄາດທີ່ເປັນສ່ວນປະກອບກຣາບຟິກຈາກຊ້າຍໄປຂວາ
ແລະຖ້າຄວາມກວ້າງຂອງອອບເຈັກຂອງຄາດປະເພດ Container ໃນແຕ່ລະແຖວບໍ່ພໍ
ຕົວຈັດວາງຜັງແບບ FlowLayout ຈະນຳອອບເຈັກຂອງຄາດເປັນສ່ວນປະກອບທີ່ເຫລືອວາງໃນຕຳແໜ່ງຖັດໄປດ້ານລຸ່ມ
ການຈັດວາງຜັງແບບ FlowLayout
ຈະປັບຂະໜາດຂອງອອບເຈັກຂອງຄາດທີ່ເປັນສ່ວນປະກອບກຣາບຟິກຕ່າງໆ
ຕາມຄວາມເໝາະສົມ ທັງນີ້ຂຶ້ນຢູ່ກັບຂໍ້ກຳນົດຕ່າງໆ ເຊັ່ນ
ຂະໜາດອອບເຈັກຂອງຄາດ JButton ຈະມີຂະໜາດຂອງຂໍ້ຄວາມເທິງປຸ່ມ ເປັນຕົ້ນ
ໂປຣແກຣມທີ 5.4 ສະແດງຕົວຢ່າງໂປຣແກຣມ
GUI ທີ່ສ້າງອອບເຈັກຂອງຄາດ JFrame
ຂຶ້ນມາແລ້ວກຳນົດໃຫ້ມີການຈັດວາງຜັງແບບ FlowLayout ໂດຍໃຊ້ຄຳສັ່ງ
fr.setLayout(new FlowLayout());
ໂປຣແກຣມທີ
5.4 ຕົວຢ່າງການໃຊ້ຕົວຈັດວາງຜັງແບບ FlowLayout
ໂປຣແກຣມ
GUI ນີ້ຈະມີອອບເຈັກຂອງຄາດ JButton ຢູ່ສາມອອບເຈັກ
ໂດຍກຳນົດໃຫ້ມີຂໍ້ຄວາມເປັນ Submit, Cancel ແລະ Exit
ຈາກນັ້ນໂປຣແກຣມໄດ້ໃສ່ອອບເຈັກຂອງຄາດ JButton ແຕ່ລະຕົວລົງໃນອອບເຈັກຂອງຄາດ
JFrame ເຊິ່ງຈະໄດ້ໂປຣແກຣມ GUI ທີ່ມີປຸ່ມສາມປຸ່ມລຽງຈາກຊ້າຍໄປຂວາດັ່ງຮູບທີ
5.11 (ກ) ແລະໃນກໍລະນີ
ຂະໜາດແຄບປຸ່ມບາງປຸ່ມກໍ່ຈະລົງມາຢູ່ໃນຕຳແໜ່ງຖັດໄປດັ່ງຮູບທີ
5.11(ຂ)
(ກ) (ຂ)
ຮູບທີ 5.11
ຜົນລັບທີ່ໄດ້ຈາກການລັນໂປຣແກຣມທີ 5.4
5.3.3 GridLayout
GridLayout
ເປັນການຈັດວາງຜັງທີ່ແບ່ງອອບເຈັກຂອງຄາດປະເພດ Container
ເປັນຊ່ອງທາງຍ່ອຍໆ ຫລາຍຊ່ອງ
ໂດຍແຕ່ລະຊ່ອງຍ່ອຍຈະມີຂະໜາດຄວາມກວ້າງແລະຄວາມສູງເທົ່າກັນ GridLayout
ຈະອະນູຍາດໃຫ້ໃສ່ອອບເຈັກຂອງຄາດທີ່ເປັນສ່ວນປະກອບກຣາບຟິກໄດ້ໜຶ່ງອອບເຈັກ
ໃນແຕ່ລະຊ່ອງຍ່ອຍ
ໂດຍຈະກຳນົດໃຫ້ຂະໜາດໃຫ້ຂະໜາດຂອງອອບເຈັກຂອງຄາດທີ່ເປັນສ່ວນປະກອບກຣາບຟິກມີຂະໜາດເທົ່າກັບຂະໜາດຂອງຊ່ອງຍ່ອຍ
ການສ້າງຕົວຈັດວາງຜັງແບບ GridLayout ທຳໄດ້ໂດຍການສ້າງອອບເຈັກຂອງຄາດ
GridLayout ທີ່ມີຮູບແບບຂອງ
constructor ເປັນດັ່ງນີ້
public GridLayout(int row, int col)
ໂດຍທີ່ row ແລະ col
ຄືຈຳນວນແຖວແລະຄໍລ້ຳທີ່ຕ້ອງການແບ່ງອອບເຈັກຂອງຄາດປະເພດ Container
ໃຫ້ເປັນຊ່ອງຍ່ອຍ
ການໃສ່ອອບເຈັກຂອງຄາດທີ່ເປັນສ່ວນປະກອບກຣາບຟິກລົງໃນຊ່ອງຍ່ອຍ
ຈະທຳໄດ້ໂດຍການເອີ້ນໃຊ້ເມທອດ add () ເຊັ່ນດຽວກັນ
ແຕ່ໃນກໍລະນີນີ້ໂປຣແກຣມ GUI
ຈະໃສ່ອອບເຈັກຈາກຊ່ອງຍ່ອຍເທິງສຸດລຽງຈາກຊ້າຍໄປຂວາ
ໂດຍບໍ່ສາມາດທີ່ຈະຂ້າມຊ່ອງຍ່ອຍໃດຊ່ອງຍ່ອຍໜຶ່ງໄດ້
ໂປຣແກຣມທີ
5.5 ຕົວຢ່າງການໃຊ້ຕົວຈັດວາງຜັງແບບ GridLayout
ຮູບທີ5.12
ຜົນລັບທີ່ໄດ້ຈາກການລັນໂປຣແກຣມທີ 5.5
5.4 ສ່ວນປະກອບກຣາບຟິກໃນແພັກເກດ Swing
ແພັກເກດ
AWT ມີຄາດທີ່ເປັນສ່ວນປະກອບກຣາບຟິກທີ່ສຳຄັນດັ່ງນີ້
- Button ເປັນຄາດທີ່ໃຊ້ໃນການສ້າງອອບເຈັກທີ່ເປັນປຸ່ມ
- Label
ເປັນຄາດທີ່ໃຊ້ໃນການສ້າງອອບເຈັກທີ່ມີໄວ້ໃນການສະແດງຂໍ້ຄວາມ
- Text Field
ເປັນຄາດທີ່ໃຊ້ໃນການສ້າງອອບເຈັກເພື່ອໃຫ້ຜູ້ໃຊ້ປ້ອນຂໍ້ຄວາມໄດ້ສູງສຸດໜຶ່ງບັນທັດ
- Checkbox ເປັນຄາດທີ່ທຳໜ້າທີ່ຄ່າຍກັບປຸ່ມໂດຍໃຊ້ສະວິດ
“on-off”
- Choice
ເປັນຄາດທີ່ຜູ້ໃຊ້ສາມາດເລືອກລາຍການຈາກທີ່ກຳນົດມາໃຫ້ໄດ້
- List
ເປັນຄາດທີ່ຈະທຳໜ້າທີ່ຄ່າຍ Choice
ແຕ່ຈະສະແດງລາຍການໄດ້ຫລາຍແຖວພ້ອມໆ ກັນ
- Scollbar
ເປັນຄາດທີ່ທຳໜ້າທີ່ເປັນແຖບຄວບຄຸມເພື່ອໃຫ້ຜູ້ໃຊ້ສາມາດເລື່ອນໄປຍັງຕຳແໜ່ງທີ່ຕ້ອງການໄດ້
- Canvas
ເປັນຄາດທີ່ເປັນພື້ນທີ່ວ່າງເປົ່າເພື່ອໃຊ້ໃນການແຕ້ມຮູບກຣາບຟິກລົງໄປ
ສຳຫລັບຄາດທີ່ເປັນສ່ວນປະກອບກຣາບຟິກຂອງແພັກເກດ
Swing ທຸກຄາດຈະສືບທອດ
ມາຈາກຄາດJComponent
ດັ່ງສະແດງໃນຮູບທີ 5.13 ໂດຍຄາດ JComponent ຈະສືບທອດມາຈາກຄາດ Container
ໃນແພັກເກດ AWT ອີກຕໍ່ໜຶ່ງ
ຮູບທີ 5.13 ຄາດຕ່າງໆ
ທີ່ສືບທອດມາຈາກຄາດ JComponent
ແພັກເກດ
Swingຈະມີຄາດທີ່ເປັນສ່ວນປະກອບກຣາບຟິກທີ່ສອດຄ່ອງກັບຄາດໃນແພັກເກດ AWT
ໂດຍຄາດເຫລົ່ານີ້ຈະມີຊື່ຂຶ້ນຕົ້ນດ້ວຍອັກສອນ ‘J’
ໂດຍມີຄາດທີ່ສຳຄັນດັ່ງນີ້
- JButton
ເປັນຄາດທີ່ທຳໜ້າທີ່ເປັນປຸ່ມໃນແພັກເກດ Swing
- JLabel
ເປັນຄາດທີ່ໃຊ້ໃນການສ້າງອອບເຈັກທີ່ໄວ້ໃນການສະແດງຂໍ້ຄວາມໃນແພັກເກດ
Swing
- JTextField
ເປັນຄາດທີ່ໃຊ້ໃນການປ້ອນຂໍ້ຄວາມໜຶ່ງບັນທັດໃນແພັກເກດ Swing
- JTextArea
ເປັນຄາດທີ່ໃຊ້ໃນການປ້ອນຂໍ້ຄວາມຫລາຍບັນທັດໃນແພັກເກດ Swing
- JScrollBar
ເປັນຄາດທີ່ທຳໜ້າທີ່ເປັນແຖບຄວບຄຸມເພື່ອໃຫ້ຜູ້ໃຊ້ເລື່ອນ
ໄປຍັງຕຳແໜ່ງທີ່ຕ້ອງການໄດ້ໃນແພັກເກດ Swing
- JCheckBox
ເປັນຄາດທີ່ທຳໜ້າທີ່ຄ່າຍປຸ່ມໃນແພັກເກດ Swing
- JChoice
ເປັນຄາດທີ່ຜູ້ໃຊ້ສາມາດເລືອກລາຍການໄດ້ໃນແພັກເກດ Swing
ການຂຽນໂປຣແກຣມ GUI ໂດຍຫລາຍຈະໃຊ້ສ່ວນປະກອບກຣາບຟິກຂອງແພັກເກດ
Swing
ທີ່ມີ Look and Feel ທີ່ດີກວ່າຂອງແພັກເກດ AWT ຮູບທີ 5.14
ສະແດງຕົວຢ່າງສ່ວນປະກອບກຣາບຟິກຂອງແພັກເກດ Swing ບາງຄາດ
ເຊິ່ງເນື້ອຫາໃນຫົວຂໍ້ຍ່ອຍຕໍ່ໄປະຈະອະທິບາຍການໃຊ້ງານຂອງຄາດທີ່ສຳຄັນບາງຄາດ
ຮູບທີ 5.14 ຕົວຢ່າງການ Look
and Feel ຄາດທີ່ເປັນສ່ວນປະກອບກຣາບຟິກໃນແພັກເກດ Swing
5.4.1 ຄາດ JButton
JButton
ເປັນຄາດທີ່ໃຊ້ໃນການສ້າງອອບເຈັກທີ່ສະແດງເປັນປຸ່ມ ໂດຍຈະມີຂໍ້ຄວາມ
(text) ປະກົດຢູ່ເທິງປຸ່ມ
ຜູ້ໃຊ້ສາມາດໃຊ້ອຸປະກອນອິນພຸດເຊັ່ນເມົ້າຫລືຄີບອດກົດເລືອກປຸ່ມໄດ້
JButton ເປັນຄາດທີ່ສືບທອດມາຈາກຄາດ JComponent
ເຮົາສາມາດທີ່ຈະສ້າງອອບເຈັກຂອງຄາດ JButton ໂດຍເອີ້ນໃຊ້ constructor
ຂອງຄາດ JButton ທີ່ມີຮູບແບບດັ່ງນີ້
·
public
JButton()
·
public
JButton(String text)
·
public
Jbutton(Icon icon)
·
public
JButton(String text, Icon icon)
ໂດຍທີ່
- text
ຄືຂໍ້ຄວາມທີ່ຈະປະກົດຢູ່ເທິງປຸ່ມ
- Icon
ຄືໄອຄອນທີ່ຕ້ອງການສະແດງ
ຄາດ Button ຍັງມີເມທອດອື່ນໆ
ທີ່ສຳຄັນໃນການຈັດການກັບຂໍ້ຄວາມດັ່ງນີ້
- public void setText(String
text) ເປັນເມທອດທີ່ໃຊ້ໃນການກຳນົດຫລືປ່ຽນຂໍ້ຄວາມຂອງປຸ່ມ
- public String getText()
ເປັນເມທອດທີ່ໃຊ້ໃນການເອີ້ນເບິ່ງຂໍ້ຄວາມຂອງປຸ່ມ
- public void
setMnemonic(char c) ຫລື void setMnemonic(int i)
ເປັນເມທອດໃນການກຳນົດຄີທີ່ເປັນ shortcut ໃຫ້ກັບອອບເຈັກຂອງຄາດ
JButton
- public void setIcon(Icon
c) ເປັນເມທອດໃນການໃສ່ໄອຄອນ (icon) ລົງໃນອອບເຈັກຂອງຄາດ JButton
ນອກຈານີ້ເຮົາຍັງສາມາດເອີ້ນໃຊ້ເມທອດຂອງຄາດ
JComponent ເຊິ່ງເປັນ superclass ຂອງ JButton
ທີ່ມີເມທອດທີ່ເພີ່ມລັກສະນະຕ່າງໆ
ໃຫ້ກັບອອບເຈັກທີ່ເປັນສ່ວນປະກອບກຣາບຟິກ ເຊັ່ນ
- public void
setBorder(Border bd)
ເປັນເມທອດສຳຫລັບກຳນົດຂອບໃຫ້ກັບສ່ວນປະກອບກຣາບຟິກ
·
public
void setToolTipText(String text)
ເປັນເມທອດສຳຫລັບກຳນົດຂໍ້ຄວາມທີ່ຈະສະແດງເປັນ tooltip
ໃຫ້ກັບສ່ວນປະກອບກຣາບຟິກ
ຕົວຢ່າງການສ້າງອອບເຈັກຂອງຄາດ
JButton ທີ່ສະແດງຂໍ້ຄວາມຄີທີ່ເປັນ shortcut
ແລະ
tooltip ສາມາດກຳນົດໄດ້ຕາມຄຳສັ່ງດັ່ງນີ້
JButton b1 = new JButton("Demo
button");
b1.setMnemonic(KeyEvent.VK_D);
b1.setToolTipText("Click this
button ");
5.4.2 ຄາດ JLabel
JLabel ເປັນຄາດທີ່ໃຊ້ສ້າງອອບເຈັກທີ່ເປັນສ່ວນປະກອບກຣາບຟິກທີ່ໃຊ້ໃນການສະແດງຂໍ້ຄວາມ
ໂດຍທີ່ຄາດ JLabel ມີ constructor ທີ່ສຳຄັນດັ່ງນີ້
·
public
JLabel(String text)
·
public
JLabel(String text, int align)
·
public
Jlabel(Icon icon)
·
public
Jlabel(Icon icon, int align)
·
public
JLabel(String text, Icon icon)
ໂດຍທີ່
- text
ຄືຂໍ້ຄວາມທີ່ຕ້ອງການສະແດງ
- align
ຄືການກຳນົດການວາງແນວ (ຊິດຊ້າຍ
ຂວາ ຫລືບ່ອນກາງ) ຂອງຂໍ້ຄວາມ
- Icon
ຄືໄອຄອນທີ່ຕ້ອງການສະແດງ
ຄາດ JLabel ຍັງມີເມທອດອື່ນໆ
ໃນການຈັດການແລະກຳນົດ Look and Feel ຂອງ
ອອບເຈັກເຊັ່ນດຽວກັບ
JButton ເຊິ່ງຄຳສັ່ງເຫລົ່ານີ້ສາມາດຫາໄດ້ຈາກ Java API
ຫລືເອີ້ນເບິ່ງຄຳສັ່ງໃນໂປຣແກຣມ IDE ເຊັ່ນ NetBeans
ໂປຣແກຣມທີ 5.6
ສະແດງຕົວຢ່າງການສ້າງອອບເຈັກຊະນິດ JLabel ຂຶ້ນມາສາມອອບເຈັກໂດຍແຕ່ລະອອບເຈັກຈະໃຊ້ຄຳສັ່ງ
constructor ທີ່ແຕກຕ່າງກັນ ແລະຈະມີໄອຄອນປະກອບຂໍ້ຄວາມໃນອອບເຈັກຊື່
label ແລະ label3 ໂດຍໄອຄອນຈະສ້າງມາຈາກໄຟທີ່ມີຊື່ testImg.jpg
ທີ່ເກັບໃນໄດເລັກທໍລີທີ່ຊື່ images ເຊິ່ງຢູ່ພາຍໃນໄດເລັກທໍລີດຽວກັບໄຟທີ່ຊື່ JLabelDemo.class ໂປຣແກຣມນີ້ຈະທຳການໂຫລດໄຟດັ່ງກ່າວມາໃສ່ໃນອອບເຈັກທີ່ຊື່
iconໂດຍມີຄຳສັ່ງດັ່ງນີ້
URL imageURL = JLabelDemo.class.getResource("images/testImg.jpg");
if (imageURL != null) {
icon = new ImageIcon(imageURL);
}
ໂປຣແກຣມນີ້ຈະໃຫ້ຜົນລັບດັ່ງຮູບທີ
5.15
ໂປຣແກຣມທີ
5.6 ຕົວຢ່າງການສ້າງອອບເຈັກຊະນິດ JLabel
ຮູບທີ5.15
ຜົນລັບທີ່ໄດ້ຈາກການລັນໂປຣແກຣມທີ 5.6
5.4.3
ຄາດ JTextField
JTextField
ຄືຄາດທີ່ໃຊ້ໃນການສ້າງອອບເຈັກເພື່ອໃຫ້ຜູ້ໃຊ້ປ້ອນຂໍ້ຄວາມໜຶ່ງບັນທັດ
ໂດຍທີ່ຄາດ JTextFied ມີ constructor ທີ່ສຳຄັນດັ່ງນີ້
- public JTextField()
- public JTextField(int col)
- public JTextField(String text)
- public JTextField(String
text, int col)
ໂດຍທີ່
- text ຄືຂໍ້ຄວາມເລີ່ມຕົ້ນທີ່ຕ້ອງການສະແດງ
- col
ຄືຈຳນວນຄໍລ້ຳທີ່ຕ້ອງາການສະແດງ
ຄາດ
JTextField ມີເມທອດທີ່ສຳຄັນດັ່ງນີ້
- public int getColumns()
·
public
String getText()
- public boolean
isEditable()
- public void select(int
selectionStart, int selectionEnd)
- public void selectAll()
- public void setEditable(boolean b)
- public void setText(String t)
- public void setColumn(int
column)
ເມທອດ
setText()ໃຊ້ໃນການກຳນົດຫລືປ່ຽນຂໍ້ຄວາມຂອງອອບເຈັກຊະນິດ
JTextFiled
ໃນກໍລະນີເຮົາຕ້ອງການກຳນົດໃຫ້ JTextField ສາມາດອ່ານຂໍ້ຄວາມໄດ້ຢ່າງດຽວ
ເຮົາສາມາດທຳໄດ້ໂດຍເອີ້ນໃຊ້ເມທອດ setEditable(boolean b) ໂດຍກຳນົດໃຫ້
argument ມີຄ່າເປັນ falseສ່ວນເມທອດ select()ໃ ຊ້ໃນການເລືອກຂໍ້ຄວາມໃນ
JTextField
ໂປຣແກຣມທີ 5.7 ສະແດງຕົວຢ່າງການສ້າງເຟມທີ່ອອບເຈັກຂອງຄາດ
Label ແລະ TextField ສະແດງຢູ່ໂປຣແກຣມນີ້ຈະກຳນົດໃຫ້ອອບເຈັກ fr ຂອງຄາດ JFrame
ມີການຈັດວາງຜັງແບບ FlowLayoutn ຜົນລັບຂອງໂປຣແກຣມນີ້ເປັນ
ດັ່ງສະແດງໃນຮູບທີ 5.12
ໂປຣແກຣມທີ
5.7 ຕົວຢ່າງການສ້າງອອບເຈັກ JTextField
ຮູບທີ 5.16
ຜົນລັບທີ່ໄດ້ຈາກການລັນໂປຣແກຣມທີ 5.7
5.4.4
ຄາດ JTextArea
JTextArea
ເປັນຄາດທີໃຊ້ໃນການສ້າງອອບເຈັກທີ່ສາມາດປ້ອນແລະແກ້ໄຂຂໍ້ຄວາມໄດ້
JTextArea ຕ່າງຈາກ JTextField ບ່ອນທີ່ຈະສາມາດກຳນົດຈຳນວນບັນທັດໄດ້ຫລາຍບັນທັດ
ໂດຍທີ່ຄາດ JTextArea ມີ constructor ທີ່ສຳຄັນດັ່ງນີ້
- public JTextArea()
- public JTextArea(String Text)
- public JTextArea(String Text, int row, int
col)
- public JTextArea(int row,
int col)
ໂດຍທີ່
- text ຄືຂໍ້ຄວາມເລີ່ມຕົ້ນທີ່ຕ້ອງການສະແດງ
- row ແລະ col
ຄຳຈຳນວນແຖວແລະຄໍລ້ຳຂອງ
- Scrollbar
ເປັນການກຳນົດການມີ scrollbar ຂອງ TextArea
ຄາດ
JTextArea ຈະມີເມທອດທີ່ສຳຄັນດັ່ງນີ້
- Public int getColumns ()
- public int getRows()
- public String getSelectedText()
- public boolean isEditable()
- public void select(int selectionStart, int
selectionEnd)
- public void selectAll()
- public void setEditable(boolean b)
- public void setText(String t)
- public void setColumns(int column)
- public void setRows(int
rows)
ທັງນີ້ເມທອດທີ່ສຳຄັນທີ່ຢູ່ໃນຄາດ
JTextArea ຈະຄ່າຍກັບເມທອດຂອງຄາດ
JTextArea
ແຕ່ຈະເພີ່ມເມທອດທີ່ກ່ຽວຂ້ອງກັບການຈັດການຈຳນວນແຖວຂຶ້ນມາ ເຊັ່ນ
setRow () ແລະ getRow ()
ໂປຣແກຣມທີ 5.8 ສະແດງຕົວຢ່າງການສ້າງ
JFrame ທີ່ມີອອບເຈັກຂອງຄາດ JTextArea ໂດຍໂປຣແກຣມນີ້ຈະໃຫ້ຜົນລັບດັ່ງສະແດງໃນຮູບທີ
5.8
ໂປຣແກຣມທີ
5.8 ຕົວຢ່າງການສ້າງອອບເຈັກ JTextArea
ຮູບທີ 5.17
ຜົນລັບທີ່ໄດ້ຈາກການລັນໂປຣແກຣມທີ 5.8
5.4.5 ຄາດ JCheckBox ແລະ JRadioButton
JCheckBox ເປັນຄາດທີ່ໃຊ້ໃນການສ້າງອອບເຈັກທີ່ທຳໜ້າທີ່ຄ່າຍກັບປຸ່ມ
ໂດຍໃຫ້ຜູ້ໃຊ້ກົດຊ່ອງທີ່ເປັນສະວິດເພື່ອເລືອກຫລືບໍ່ເລືອກລາຍການ
JCheckBox ຈະມີຂໍ້ຄວາມຢູ່ທາງຂ້າງເພື່ອອະທິບາຍຄວາມໝາຍຂອງລາຍການ
JCheckBox ມີ constructor ທີ່ສຳຄັນດັ່ງນີ້
- public JCheckBox(String label)
- public JCheckBox(String label, boolean state)
- public JCheckBox(Icon icon)
- public JCheckBox(Icon icon, boolean state)
- public JCheckBox(String label, Icon icon)
- public JCheckBox(String
label, Icon icon, boolean state)
ໂດຍທີ່
- label
ຄືຂໍ້ຄວາມທີ່ຕ້ອງການສະແດງໃນ JCheckBox
- Icon
ຄືໄອຄອນທີ່ຕ້ອງການສະແດງ ໂດຍທີ່
- state
ເປັນຕົວກຳນົດສະຖານະການເລີ່ມຕົ້ນຂອງ JCheckBox ກໍລະນີທີ່ constructor
ບໍ່ໄດ້ກຳນົດສະຖານະການເລີ່ມຕົ້ນຈະຖືວ່າມີຄ່າເປັນ false
(ບໍ່ຖືກເລືອກ)
ຄາດ
JCheckBox ມີເມທອດທີ່ສຳຄັນດັ່ງນີ້
- public String getLabel()
- public Object[] getSelectedObjects()
- public void setLabel(String label)
- public void
setSelected(boolean state)
ໂປຣແກຣມທີ
5.9 ສະແດງຕົວຢ່າງການໃຊ້ JCheckBox ໂດຍໂປຣແກຣມຈະສ້າງ
ເຟມທີ່ມີອອບເຈັກຊະນິດ
JCheckBox ເພື່ອໃຫ້ຜູ້ໃຊ້ເລືອກສາມອອບເຈັກດັ່ງສະແດງໃນຮູບທີ 5.18
ເຮົາສາມາດທີ່ຈະສ້າງຕົວເລືອກທີ່ເປັນແບບRadio Button ໂດຍໃຊ້
ໃນກໍລະນີຈະກຳນົດໃຫ້ອອບເຈັກ JRadioButton ຫລາຍຕົວຢູ່ໃນກຸ່ມດຽວກັນ
ໂດຍຢູ່ໃນກຸ່ມຂອງອອບເຈັກຂອງຄາດ ButtonGroup ເຊິ່ງຈະຕ້ອງໃຊ້ເມທອດ add
()
ຄາດ ButtonGroup
ບໍ່ແມ່ນຄາດທີ່ເປັນສ່ວນປະກອບກຣາບຟິກ
ແຕ່ຈະໃຊ້ໃນການສ້າງອອບເຈັກເພື່ອກຳນົດກຸ່ມຂອງ AbstractButton
constructor ດັ່ງນີ້
·
public
ButtonGroup()
ໂປຣແກຣມທີ
5.9 ສະແດງຕົວຢ່າງຂອງການສ້າງ JRadioButton ໂດຍປັບປ່ຽນ
JRadioButtonໃນໂປຣແກຣມທີ
5.9 ໃຫ້ຢູ່ໃນກຸ່ມຂອງອອບເຈັກທີ່ຊື່
ໂປຣແກຣມນີ້ຈະມີຜົນລັບເປັນສ່ວນຕິດຕໍ່ກັບຜູ້ໃຊ້ດັ່ງຮູບທີ 5.19
ໂປຣແກຣມທີ
5.9 ຕົວຢ່າງການສ້າງອອບເຈັກ JCheckBox
ຮູບທີ5.18
ຜົນລັບທີ່ໄດ້ຈາກການລັນໂປຣແກຣມທີ 5.9
ໂປຣແກຣມທີ
5.10 ຕົວຢ່າງຂອງການສ້າງອອບເຈັກ JRadioButton
ຮູບທີ 5.19
ຜົນລັບທີໄດ້ຈາກການລັນໂປຣແກຣມທີ 5.10
5.4.6 ຄາດ JComboBox
JComboBox
ເປັນຄາດທີ່ໃຊ້ໃນການສ້າງອອບເຈັກທີ່ເປັນລາຍການໃຫ້ຜູ້ໃຊ້ສາມາດເລືອກໄດ້ໂດຍ
JComboBox ຈະສະແດງລາຍການປະກົດໃຫ້ເຫັນສະເພາະລາຍການພຽງລາຍການດຽວ
ປົກກະຕິກ່ອນທີ່ຈະມີການເລືອກລາຍການ JComboBox ຈະສະແດງລາຍການທຳອິດທີ່ມີຢູ່
ແລະຫາກມີການຄິກເມົ້າ ອອບເຈັກ JCoboBox ຈະສະແດງລາຍການທັງໝົດທີ່ມີຢູ່
ໂດຍທີ່ຄາດ JComboBox ມີ constructor ທີ່ສຳຄັນດັ່ງນີ້
- public JComboBox()
- public JcomboBox([]Object
objs)
ຄາດ JComboBox ມີເມທອດຕ່າງໆ
ທີ່ສຳຄັນດັ່ງນີ້
- public void addItem(Object item)
- public void insertItemAt(Object item, int
pos)
- public Object getItem(int index)
- public int getItemCount()
- public Object getSelectedIndex()
- public Object getSelectedItem()
- public void setSelectedIndex(int pos)
- public void
setSelectedItem(Object item)
ເຮົາສາມາດທີ່ຈະໃສ່ລາຍການລົງໃນອອບເຈັກ
JComboBox ໄດ້ໂດຍໃຊ້ເມທອດ
addItem(Object
item) ຄາດ JComboBox ຍັງມີເມທອດ setSelectedIndex(int pos) ແລະ
setSelectedItem(Object item) ເພື່ອໃຊ້ໃນການເລືອກໃຫ້ອອບເຈັກ JComboBox
ສະແດງລາຍການທີ່ຕຳແໜ່ງຫລືຂໍ້ຄວາມທີ່ຕ້ອງການໃຫ້ສະແດງໄດ້ ສ່ວນເມທອດ
getSelectedIndex() ແລະ getSelectedItem()
ໃຊ້ໃນການສະແດງຕຳແໜ່ງຫລືຂໍ້ຄວາມທີ່ຖືກເລືອກ
ໂປຣແກຣມທີ 5.11
ສະແດງຕົວຢ່າງເຟມທີ່ມີອອບເຈັກຊະນິດ JComboBox ສະແດງຢູ່ຄຳສັ່ງ cb.addItem
() ໃຊ້ໃນການໃສ່ລາຍການຕ່າງໆ ລົງໃນອອບເຈັກ cb ສ່ວນຄຳສັ່ງ
cb.setSelectedItem(“Thailand”) ເປັນການກຳນົດໃຫ້ອອບເຈັກ cb
ເລືອກສະແດງລາຍການທີ່ຊື່ Thailand
ໂປຣແກຣມນີ້ຈະໃຫ້ຜົນລັບທີ່ເປັນສ່ວນຕິດຕໍ່ກັບຜູ້ໃຊ້ດັ່ງຮູບສະແດງໃນຮູບທີ
5.20
ໂປຣແກຣມທີ
5.11 ຕົວຢ່າງການສ້າງອອບເຈັກ JComboBox
ຮູບທີ 5.20
ຜົນລັບທີ່ໄດ້ຈາກການລັນໂປຣແກຣມທີ 5.11
5.4.7 ຄາດ JList
JList
ເປັນຄາດທີ່ໃຊ້ສ້າງອອບເຈັກທີ່ເປັນສ່ວນປະກອບກຣາບຟິກເພື່ອໃຫ້ຜູ້ໃຊ້ສາມາດເລືອກລາຍການຄ່າຍກັບ
JComboBox ແຕ່ຈະແຕກຕ່າງກັນບ່ອນທີ່ JList ຈະສະແດງລາຍ
ການຫລາຍລາຍການໂດຍທີ່ຄາດ JList ມີ constructor ທີ່ສຳຄັນດັ່ງນີ້
- public JList()
- public JList([]Object
objs)
ຄາດ JList
ມີເມທອດທີ່ສຳຄັນດັ່ງນີ້
·
public
void setSelectedIndex(int index)
·
public
void setSelectedIndices(int[]indices)
·
public
void setSelectedValue(Object item, boolean state)
·
public
void setSelectionMode(int selectionMode)
·
public
int getSelectedIndex()
·
public
int[] getSelectedIndices()
·
public
Object getSelectedValue()
·
public
Object[] getSelectedValues()
·
public
int getSelectionMode()
ເຮົາສາມາດທີຈະໃສ່ລາຍການລົງໃນອອບເຈັກ
JList ໄດ້ຕອນສ້າງອອບເຈັກ ໂດຍ
ສາມາດໃສ່ເຂົ້າໄປເປັນແບບອາເລ(ໂດຍອາເລຈະມີການກ່າວເຖິງຢ່າງລະອຽດໃນບົດທີ
8) ດັ່ງຕົວຢ່າງໂປຣແກຣມທີ 5.12 ເຊິ່ງຈະໄດ້ຜົນລັບດັ່ງສະແດງໃນຮູບທີ 5.12
ໂປຣແກຣມທີ
5.12 ຕົວຢ່າງການສ້າງອອບເຈັກ JList
ຮູບທີ່ 5.21
ຜົນລັບທີ່ໄດ້ຈາກການລັນໂປຣແກຣມທີ 5.12
ไม่มีความคิดเห็น:
แสดงความคิดเห็น