This content is provided AS IS for archive purposes only. Content may be out of date with no guarantee of correctness.

Radio Buttons - Elements - Hag GUI for Cobra - Static

Main Article

Radio Buttons - Elements - Hag GUI for Cobra

Radio Buttons using the XP theme.

Radio buttons are small GUI elements belonging to a "Radio Group". Only one radio button per group can be selected at any one time.

Radio groups expose the following read-only variables:

radiogroup.x: Integer - Radio group x position
radiogroup.y: Integer - Radio group y position
radiogroup.enabled: Boolean - If radio group is enabled
radiogroup.visible: Boolean - If radio group is visible

Radio buttons expose the following read-only variables:

radiobutton.x: Integer - Radio button x position
radiobutton.y: Integer - Radio button y position
radiobutton.w: Integer - Radio button width
radiobutton.h: Integer - Radio button height
radiobutton.enabled: Boolean - If radio button is enabled
radiobutton.visible: Boolean - If radio button is visible

For a ready-to-run example, see Example_Radiobuttons in the Examples download.


Program (icon:"hag\icons\window.ico")

   background: Element
   i: Integer
   frmMain: ^forms
   cbxMain: ^checkboxes
   rdoGroup, rdoGroup2: ^radioGroups
   rdoMain: Array [7] of ^radioButtons
   btnClose: ^buttons
   fraRight: ^frames
   rdoButtonEnabled: Array [2] of ^radioButtons


   SetAppName("Radio Button Example")
   OpenScreen(320, 240, 32, FALSE, COB_SHOWBORDER + COB_SHOWCLOSE)
   background = CreateSprite(320, 240)
   Cls(ToRGBA(235,233,237),background) ; Flip
   HagInit(640, 480, 1) // use a sprite index of 1 because of the background sprite
   frmMain = CreateForm()
   cbxMain = CreateCheckbox(frmMain, 20, 20, 120, "Enable Options", TRUE)
   rdoGroup = CreateRadioGroup(frmMain)
   For i = 0 to 6
       rdoMain[i] = CreateRadioButton(rdoGroup, 40, 50+((i)*25), 120, "Option "+(i+1), (i=0))
   fraRight = CreateFrame(frmMain, 140, 60, 160, 120, FRAME_STYLE_ROUNDBORDER, "Extended Options")
   rdoGroup2 = CreateRadioGroup(frmMain)
   rdoButtonEnabled[0] = CreateRadioButton(rdoGroup2, 160, 100, 120, "Button Enabled", TRUE)
   rdoButtonEnabled[1] = CreateRadioButton(rdoGroup2, 160, 120, 120, "Button Disabled", FALSE)
   btnClose = CreateButton(frmMain, 200, 200, 100, "Close Program")
   While Not ExitRequested

       If CheckBoxClicked(cbxMain) then EnableRadioGroup(rdoGroup, CheckBoxChecked(cbxMain), TRUE)
       If SelectedRadioButtonExists(rdoGroup2) then
(SelectedRadioButton(rdoGroup2) = rdoButtonEnabled[0]) and (btnClose.enabled = FALSE) then EnableButton(btnClose)
           If (SelectedRadioButton(rdoGroup2) = rdoButtonEnabled[1]) and (btnClose.enabled = TRUE) then DisableButton(btnClose)


       If ButtonClicked(btnClose) then RequestExit
       If KeyHits(VK_ESCAPE) > 0 then RequestExit    


Stay Subscribed

@golightlyb, subscribe to the RSS feed or get updates by e-mail.

You can also contact me directly - I make an effort to reply to every e-mail.