Rexx - ส่วนติดต่อผู้ใช้แบบกราฟิก
ในการใช้อินเทอร์เฟซผู้ใช้แบบกราฟิกที่มีอยู่ใน Rexx จำเป็นต้องใช้ 2 แพ็คเกจหนึ่งเรียกว่า ActiveTcl และอีกอย่างคือ Rexxtkแพ็คเกจ นอกเหนือจากแพ็คเกจทั้ง 2 นี้เราสามารถออกแบบฟอร์มปกติซึ่งสามารถมีปุ่มและส่วนควบคุมอื่น ๆ ในแบบฟอร์มได้
การตั้งค่าสภาพแวดล้อม
สิ่งแรกที่ต้องทำคือการตั้งค่าสภาพแวดล้อม มาทำตามขั้นตอนต่อไปนี้เพื่อจัดสภาพแวดล้อม
Step 1 - ดาวน์โหลดแพ็คเกจ Activetcl จากเว็บไซต์ต่อไปนี้ - https://www.activestate.com/activetcl
Step 2- ขั้นตอนต่อไปคือการเริ่มการติดตั้ง ActiveTCl คลิกที่ปุ่มถัดไปบนหน้าจอเพื่อดำเนินการต่อ
Step 3 - ยอมรับข้อตกลงใบอนุญาตและคลิกที่ปุ่มถัดไป
Step 4 - เลือกตำแหน่งสำหรับการติดตั้งและคลิกที่ปุ่มถัดไป
Step 5 - เลือกตำแหน่งสำหรับการติดตั้งการสาธิตและคลิกที่ปุ่มถัดไป
Step 6 - คลิกที่ปุ่มถัดไปเพื่อดำเนินการติดตั้ง
Step 7 - คลิกที่ปุ่ม Finish เพื่อทำการติดตั้งให้เสร็จสิ้น
Step 8 - ขั้นตอนต่อไปคือการดาวน์โหลดซอฟต์แวร์ Rexxtk จากลิงค์ต่อไปนี้ - https://sourceforge.net/projects/rexxtk/
Step 9- ดับเบิลคลิกไฟล์ตัวติดตั้งจากลิงค์ในขั้นตอนก่อนหน้าเพื่อเริ่มการติดตั้ง คลิกที่ปุ่มถัดไปเพื่อดำเนินการต่อ
Step 10 - ในหน้าจอถัดไปคลิกที่ปุ่มใช่เพื่อยอมรับข้อตกลงใบอนุญาต
Step 11 - ในหน้าจอถัดไปเลือกตำแหน่งสำหรับการติดตั้งและคลิกที่ปุ่มถัดไป
Step 12 - เลือกตำแหน่งโฟลเดอร์ Program และคลิกที่ปุ่มถัดไป
เมื่อการติดตั้งเสร็จสมบูรณ์ตอนนี้เราสามารถเริ่มต้นด้วยการเขียนโปรแกรม GUI ใน Rexx
โปรแกรมพื้นฐาน
มาดูกันว่าเราจะออกแบบโปรแกรมพื้นฐานง่ายๆด้วย Rexx ในรูปแบบอินเทอร์เฟซผู้ใช้แบบกราฟิกได้อย่างไร
ตัวอย่าง
/* Main program */
call RxFuncAdd 'TkLoadFuncs','rexxtk','TkLoadFuncs'
call TkLoadFuncs
do forever
interpret 'Call' TkWait()
end
call TkDropFuncs
exit 0
สิ่งต่อไปนี้ต้องสังเกตเกี่ยวกับโปรแกรมข้างต้น -
ไลบรารี Rexxtk และฟังก์ชันทั้งหมดถูกโหลดโดยใช้คำสั่ง RxFuncAdd
ลูปทำตลอดไปจะทำให้หน้าต่างเปิดอยู่และจะรอให้ผู้ใช้ป้อนข้อมูล
เมื่อตรวจพบอินพุตของผู้ใช้โปรแกรมจะออก
เมื่อโปรแกรมข้างต้นทำงานคุณจะได้ผลลัพธ์ดังต่อไปนี้
การสร้างเมนู
เมนูถูกสร้างขึ้นด้วยความช่วยเหลือของฟังก์ชัน TkMenu และ TkAdd ไวยากรณ์ของฟังก์ชันเหล่านี้ได้รับด้านล่าง
ไวยากรณ์
TkMenu(widgetname,options,0)
พารามิเตอร์
Widgetname - ชื่อที่ตั้งให้กับเมนู
ตัวเลือกสามารถเป็นใครก็ได้ดังต่อไปนี้ -
selectcolor - หากใช้ช่องทำเครื่องหมายหรือปุ่มตัวเลือกเป็นตัวเลือกเมนูตัวเลือกนี้จะระบุสีเพื่อเลือกเมื่อเลือกตัวเลือกเมนูใด ๆ
tearoff - ตัวเลือกนี้ใช้สำหรับการเพิ่มเมนูย่อยในเมนูหลัก
title - สตริงที่ต้องใช้เพื่อตั้งชื่อหน้าต่าง
ส่งคืนค่า
ที่จับสำหรับเมนูที่สร้างขึ้น
ตัวอย่าง
/* Main program */
call RxFuncAdd 'TkLoadFuncs','rexxtk','TkLoadFuncs'
call TkLoadFuncs
menubar = TkMenu('.m1')
filemenu = TkMenu('.m1.file','-tearoff', 0)
call TkAdd menubar, 'cascade', '-label', 'File', '-menu', filemenu
call TkAdd filemenu, 'command', '-label', 'Open...', '-rexx', 'getfile'
call TkConfig '.', '-menu', menubar
do forever
interpret 'Call' TkWait()
end
call TkDropFuncs
exit 0
สิ่งต่อไปนี้ต้องสังเกตเกี่ยวกับโปรแกรมข้างต้น -
แถบเมนูถูกสร้างขึ้นโดยใช้ฟังก์ชัน TkMenu พารามิเตอร์ 'tearoff' หมายความว่าเราจำเป็นต้องสร้างเมนูย่อยซึ่งจะแนบไปกับเมนูหลัก
จากนั้นเราจะเพิ่มตัวเลือกเมนู 2 ตัวที่เรียกว่าไฟล์และเปิดโดยใช้ฟังก์ชัน TkAdd
เมื่อโปรแกรมข้างต้นทำงานคุณจะได้ผลลัพธ์ดังต่อไปนี้