ThaiPBL.com

PowerBuilder Library Thailand

อีเมล พิมพ์ PDF

การ add font ลงใน ddlb

สวัสดีครับ

จากคำถามใน webboard เรื่องของการ add font ลงใน ddlb 

ให้ทำดังนี้นะครับ
สร้าง windows ขึ้นมาใหม่หนึ่งอัน  จากนั้นก็เขียนสคริปต์นี้ลงไปที่ open event

String ls_valuearray[],ls_key
Integer li

ls_key = "HKEY_LOCAL_MACHINE\Software\microsoft\windows\currentversion\fonts"
li = RegistryValues(ls_key,ls_valuearray)


For li = 1 to UpperBound(ls_valuearray)
ddlb_1.Additem(ls_valuearray[li])
Next


เสร็จแล้วก็สร้าง ddlb ลงไป และ sle อีกหนึ่งอัน แล้วก็เขียนสคริปต์ที่ selectionchanged ของ ddlb  ดังนี้

String ls_fontname

ls_fontname = ddlb_1.text
ls_fontname = left(ls_fontname,pos(ls_fontname,"(")-2)
sle_1.facename = ls_fontname
sle_1.fontcharset = DefaultCharSet!


อ้อ! ที่ sle ใส่ข้อความลงไปด้วยนะครับเวลาเราเปลี่ยนที่ ddlb แล้วเราจะได้เห็นการเปลี่ยนแปลงที่เกิดขึ้นครับ

สำหรับบทความนี้ก็ดัดแปลงบางส่วนมาจากเรื่อง fontdialog นั่นเองถ้า OS ของคุณเป็น NT หรือ XP ต้องใช้ค่า Registry ตัวนี้แทนนะครับ

"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\Currentversion\Fonts"