Classe: wxRadioButton().
Un radio bouton est un bouton qui désigne habituellement l'une des nombreuses options qui s'excluent mutuellement.
Il possède en général, un "label" à côté du bouton.
Vous pouvez créer un groupe de boutons radio mutuellement exclusif en spécifiant wx.wxRB_GROUP pour la première fois dans le groupe.
Le groupe se termine quand un autre groupe de boutons radio est créé, ou s'il n'y a plus de boutons radio.
radioButton = wx.wxRadioButton ( wxWindow* parent, = non-NULL, wxWindowID id, = wx.wxID_XXX, const wxString & label, = "nom du bouton", const wxPoint & pos, = wx.wxDefaultPosition, const wxSize & size, = wx.wxDefaultSize, long style, = wx.wxRB_XXX, const wxValidator & validator, = wx.wxDefaultValidator, const wxString & name = "nom" )
parent est la fenêtre qui détient le bouton. Ne peut pas être NULL.
id est le N° d'identification ou wx.wxID_ANY ou -1.
label est le texte inscrit à coté du bouton.
pos est la position du bouton.
size représente les dimensions du bouton.
style est le style du bouton.
validator est utilisé dans le cas d'un appel à un validateur.
name utilisé pour associer un nom au bouton.
Vous trouverez ci-dessous, la liste des méthodes implémentées par wxLua 2.8.10.
GetValue() | Retourne true si le bouton radio est enfoncé, false autrement. |
SetValue(true ou false) | Définit l'option du RadioButton: activé ou désactivé. |
require("wx") -- inutile si on utilise wxluafreeze.exe function OnRadioButton(nom) wx.wxMessageBox("Vous avez choisi une "..nom) end function main() -- Création d'une frame et de son panel. local frame = wx.wxFrame(wx.NULL, -1, "wxRadioButton") frame:Centre() local panel = wx.wxPanel(frame, -1) -- Création d'un premier groupe de 2 radioButtons. local pomme = wx.wxRadioButton( panel, -1, "Pomme", wx.wxPoint(20, 20), wx.wxDefaultSize, wx.wxRB_GROUP) local banane = wx.wxRadioButton( panel, -1, "Banane", wx.wxPoint(20, 50)) -- Création d'un deuxième groupe de 2 radioButtons. local fraise = wx.wxRadioButton( panel, -1, "Fraise", wx.wxPoint(150, 20),wx.wxDefaultSize, wx.wxRB_GROUP) local cerise = wx.wxRadioButton( panel, -1, "Cerise", wx.wxPoint(150, 50)) -- On affecte les valeurs de départ. banane:SetValue(true) cerise:SetValue(true) -- Gestion de la sélection. pomme:Connect(-1, wx.wxEVT_COMMAND_RADIOBUTTON_SELECTED, function(event) OnRadioButton("pomme") end) banane:Connect(-1, wx.wxEVT_COMMAND_RADIOBUTTON_SELECTED, function(event) OnRadioButton("banane") end) fraise:Connect(-1, wx.wxEVT_COMMAND_RADIOBUTTON_SELECTED, function(event) OnRadioButton("fraise") end) cerise:Connect(-1, wx.wxEVT_COMMAND_RADIOBUTTON_SELECTED, function(event) OnRadioButton("cerise") end) frame:Show(true) end main() wx.wxGetApp():MainLoop()
Ce qui donne comme résultat.