ฟอรั่มของบล็อก http://pssix.blogspot.com


Gui การ ให้เลือก และไม่ให้เลือก แนะนำหน่อยครับ

Share

arazekung
มือใหม่เพิ่งสมัคร
มือใหม่เพิ่งสมัคร


จำนวนข้อความ : 1
ความนิยม : 0
เข้าร่วมเมื่อ : 20/02/2014

Gui การ ให้เลือก และไม่ให้เลือก แนะนำหน่อยครับ

ตั้งหัวข้อ by arazekung on 20/02/14, 11:52 am

Code:
#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

$Form1 = GUICreate("Form1", 251, 420, 603, 148)
$Combo1 = GUICtrlCreateCombo("Combo1", 16, 56, 161, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
$AA = GUICtrlCreateRadio("AA", 24, 24, 57, 17)
$BB = GUICtrlCreateRadio("BB", 88, 24, 57, 17)
$CC = GUICtrlCreateRadio("CC", 160, 24, 113, 17)
$AA1 = GUICtrlCreateCheckbox("AA1", 32, 104, 97, 17)
$AA2 = GUICtrlCreateCheckbox("AA2", 32, 120, 97, 17)
$BB1 = GUICtrlCreateCheckbox("BB1", 32, 152, 97, 17)
$BB2 = GUICtrlCreateCheckbox("BB2", 32, 168, 97, 17)
$CC1 = GUICtrlCreateCheckbox("CC1", 32, 200, 97, 17)
$CC2 = GUICtrlCreateCheckbox("CC2", 32, 216, 97, 17)


GUICtrlSetData($combo1, "AA1|AA2|BB1|BB2|CC1|CC2")
GUISetState(@SW_SHOW)


While 1
   $nMsg = GUIGetMsg()
   Switch $nMsg
      Case $GUI_EVENT_CLOSE
         Exit

   EndSwitch
WEnd

ข้างบนเป็นแบบฟอม gui ที่ผมทำมาให้เป็นตัวอย่างนะครับ 

ถ้าผมติ๊กในช่อง วงกลม AA  ในช่อง combo จะโชวแต่ AA1 AA2  อันอื่นจะหายไป (ฺBB1 BB2 CC1 CC2)
และ CheckBox จะ ติ๊กได้แค่ AA1 AA2 อันอื่น จะติ๊กไม่ได้

ถ้าจะทำแบบ ที่ว่ามานี้ ผมต้องใช้ คำสั่งไรหรอครับ ขอบคุณครับ
avatar
tomakung
PSsix Member Class II
PSsix Member Class II


จำนวนข้อความ : 38
ความนิยม : 11
เข้าร่วมเมื่อ : 24/02/2012

Re: Gui การ ให้เลือก และไม่ให้เลือก แนะนำหน่อยครับ

ตั้งหัวข้อ by tomakung on 23/02/14, 06:22 am

ลองทำแบบง้ายๆได้แบบนี้  แบบยากต้องใช้พวก array ในการกำหนด $Checkbox[0]-[x]  แล้วบรรทัดคำสั่งจะน้อยลง

Code:
#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

$Form1 = GUICreate("Form1", 251, 420, 603, 148)
$Combo1 = GUICtrlCreateCombo("Combo1", 16, 56, 161, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
$AA = GUICtrlCreateRadio("AA", 24, 24, 57, 17)
$BB = GUICtrlCreateRadio("BB", 88, 24, 57, 17)
$CC = GUICtrlCreateRadio("CC", 160, 24, 113, 17)
$AA1 = GUICtrlCreateCheckbox("AA1", 32, 104, 97, 17)
$AA2 = GUICtrlCreateCheckbox("AA2", 32, 120, 97, 17)
$BB1 = GUICtrlCreateCheckbox("BB1", 32, 152, 97, 17)
$BB2 = GUICtrlCreateCheckbox("BB2", 32, 168, 97, 17)
$CC1 = GUICtrlCreateCheckbox("CC1", 32, 200, 97, 17)
$CC2 = GUICtrlCreateCheckbox("CC2", 32, 216, 97, 17)


GUICtrlSetData($combo1, "AA1|AA2|BB1|BB2|CC1|CC2")
GUISetState(@SW_SHOW)


While 1
   $nMsg = GUIGetMsg()
   Switch $nMsg
      Case $GUI_EVENT_CLOSE
         Exit
    Case $AA1
      CheckAA1Click()

EndSwitch
WEnd
Func  CheckAA1Click()
    if  GUICtrlRead($AA1) = $GUI_CHECKED Then
       GUICtrlSetState($BB1,$GUI_DISABLE)
       GUICtrlSetData($combo1, "",@SW_HIDE)
     GUICtrlSetData($combo1, "AA1|AA2")
     Else
        GUICtrlSetState($BB1,$GUI_ENABLE)
       GUICtrlSetData($combo1, "BB1|BB2|CC1|CC2",@SW_SHOW)
   EndIf
   EndFunc

    เวลาขณะนี้ 25/06/17, 02:01 am