AVENUE : การแสดงผล Theme ด้วย GUI ใน ArcView 3.X
AVENUE : การแสดงผล Theme ด้วย GUI ใน ArcView 3.X
ในบทความชุดนี้ทางผู้เรียบเรียงและเขียน ได้อธิบายวิธีการแสดงผล Theme ที่เราสนใจดูข้อมูลนั้น ซึ่งในบทความนี้อยากให้คุณได้เรียนรู้โครงสร้างของชุดคำสั่งในการเรียกใช้งาน theme และจะได้เข้าใจถึงโครงสร้างของโปรแกรมแบบ For Each … มากขึ้น ในการเรียกใช้งานซ้ำๆ สำหรับบางกรณี
ให้ทุกท่านเปิด Project ที่ทำไว้ในบทความครั้งที่ 4 ที่ผ่านมาแล้วให้ลองทดสอบ script ใหม่ เพื่อให้เราเข้าใจในบทเรียนมากขึ้น
ซึ่งถ้าเราพยายามทำความเข้าใจโครงสร้างของชุดคำสั่งต่างๆ ที่เราต้องการเรียกใช้งานให้ Theme ที่มีอยู่แสดงผล เราอาจจะใช้คำสั่ง SetVisible ดังตัวอย่างข้างล่างเป็นการค้นหา Theme ที่ต้องการและให้มีการแสดงผลบน view
ศึกษาเพิ่มเติมได้จากเอกสารแนบนี้ avenue06.pdf
🧩 ตัวอย่างสคริปต์ Avenue สำหรับสลับการแสดงผลของ Theme
avenueCopyEdittheView = av.GetActiveDoc
theThemes = theView.GetThemes
for each aTheme in theThemes
if (aTheme.GetName = "ชื่อธีมที่ต้องการ") then
aTheme.SetVisible(not aTheme.IsVisible)
end
end
theView.Invalidate
คำอธิบาย:
av.GetActiveDoc
: ดึง View ที่กำลังใช้งานอยู่ในปัจจุบัน.GetThemes
: ดึงรายการ Theme ทั้งหมดใน View.For Each
: วนลูปผ่านแต่ละ Theme ใน View.GetName
: ตรวจสอบชื่อของ Theme.SetVisible
: ตั้งค่าการแสดงผลของ Theme.IsVisible
: ตรวจสอบสถานะการแสดงผลปัจจุบันของ Theme.Invalidate
: รีเฟรช View เพื่อแสดงผลการเปลี่ยนแปลง.
🛠️ การนำสคริปต์ไปใช้งาน
- สร้างสคริปต์ใหม่:
- เปิด ArcView 3.x และคลิกที่ไอคอน “Script” เพื่อเปิดหน้าต่าง Script Manager.
- คลิก “New” เพื่อสร้างสคริปต์ใหม่ และวางโค้ดที่กล่าวมาข้างต้นลงไป.
- คอมไพล์สคริปต์:
- คลิกที่เมนู “Script” > “Compile” เพื่อคอมไพล์สคริปต์และตรวจสอบข้อผิดพลาด.
- เรียกใช้สคริปต์:
- สามารถเรียกใช้สคริปต์ได้โดยคลิกที่ “Script” > “Run” หรือผูกสคริปต์กับปุ่มหรือเครื่องมือใน ArcView เพื่อความสะดวกในการใช้งาน.