Jump to content

Recommended Posts

Posted

Is there any example code for large (touch screen friendly) check boxes ? I need to create a gui full-screen with about 16 different check boxes, approx 1x1 cm size.

As this is not directly possible with Windows, I wonder if anyone has example code already ?

 

My take would be to put Windings font in a label, and keep state behind the scenes in an sqlite database.

Is this approach best way ?

  Reveal hidden contents

I am just a hobby programmer, and nothing great to publish right now.

  • Moderators
Posted

Myicq,

Is this solution any use?

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

  Reveal hidden contents

 

Posted (edited)

To quickly create multiple checkboxes of Melba23's suggestion, I used the following

It creates 8 checkboxes, and enable / disable all works. However, I can't quite figure out how to manually click individual checkboxes yet...

If you can get it working, would be happy to know :)

Global $iDispensers = 8, $aCheckbox[$iDispensers], $iCountChecked = 0

For $i = 0 To $iDispensers - 1
    $aCheckbox[$i] = GUICtrlCreateLabel("", 72, ($i * 32) + 16, 30, 30, 0x1201)
    GUICtrlSetFont(-1, 19, 400, 0, "Marlett")
    GUICtrlSetBkColor(-1, 0xFFFFFF)
    GUICtrlCreateLabel("Dispenser" & $i + 1, 115, ($i * 32) + 25, 100, 30)
Next
$CheckboxAll = GUICtrlCreateLabel("", 72, ($i * 32) + 16, 30, 30, 0x1201)
    GUICtrlSetFont(-1, 19, 400, 0, "Marlett")
    GUICtrlSetBkColor(-1, 0xFFFFFF)
    GUICtrlCreateLabel("Enable/Disable All", 115, 280, 100, 30)

GUISetState()

While 1
    $nMsg = GUIGetMsg()

    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit

        Case $CheckboxAll
            $bCheckAll = _IsChecked($CheckboxAll)
            Switch GUICtrlRead($CheckboxAll)
                Case ""
                    GUICtrlSetData($CheckboxAll, "a")
                        For $i = 0 To UBound($aCheckbox, 1) - 1
                            If $bCheckAll Then
                                GUICtrlSetData($aCheckbox[$i], "")
                            Else
                                GUICtrlSetData($aCheckbox[$i], "a")
                            EndIf
                        Next
                Case "a"
                    GUICtrlSetData($CheckboxAll, "")
                        For $i = 0 To UBound($aCheckbox, 1) - 1
                            If $bCheckAll Then
                                GUICtrlSetData($aCheckbox[$i], "a")
                            Else
                                GUICtrlSetData($aCheckbox[$i], "")
                            EndIf
                        Next
                Case Else
                    GUICtrlSetData($CheckboxAll, "")
            EndSwitch

 

Edited by royalmarine

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...