wxLua et wxWidgets:
Mode d'emploi.
 wxWidgets
Lua
Flèche gauche accueil wxWidgets lua notes Flèche droite
Description détaillée.

Classe: wxRadioBox().

Une "RadioBox" est une boîte de boutons Radio.

Un élément de la boîte radio est utilisé pour sélectionner un nombre de choix mutuellement exclusifs.

Cette "RadioBox" peut être affichée en colonne ou en ligne horizontale.

Les styles utilisés.
  • wx.wxRA_SPECIFY_ROWS:
    Le paramètre dimension se rapporte au nombre maximum de lignes.
  • wx.wxRA_SPECIFY_COLS:
    Le paramètre dimension se rapporte au nombre maximum de colonnes.
Evènement émis par cette classe.
  • wx.wxEVT_COMMAND_RADIOBOX_SELECTED
    (id, wx.wxEVT_COMMAND_RADIOBOX_SELECTED, fonction)
Le constructeur.
radioBox = wx.wxRadioBox (
  wxWindow          * parent,        = no-NULL
  wxWindowID          id,            = wx.wxID_XXX,
  const wxString    & label,         = "nom de la boîte",
  const wxPoint     & pos            = wx.wxDefaultPosition,
  const wxSize      & size           = wx.wxDefaultSize,
  constwxString       choices        = (Nom du tableau de liste),
  int                 majorDimension = 1, (nb col. ou rangées)
  long                style          = wx.wxRA_SPECIFY_COLS,
  const wxValidator & validator      = wx.wxDefaultValidator,
  const wxString    & name           = "nom" 
		)

parent est la fenêtre qui détient le RadioBox. Ne peut pas être NULL.

id est le N° d'identification ou wx.wxID_ANY ou -1.

label est le texte inscrit sur le RadioBox.

pos est la position du RadioButton.

size représente les dimensions du RadioBox.

choices est un tableau qui liste les choix des boutons.

majorDimension spécifie le nb de colonnes ou de rangées en fonction du style défini.

style est le style du RadioBox.

validator est utilisé dans le cas d'un appel à un validateur.

name utilisé pour associer un nom à la RadioBox.

Les méthodes.

Vous trouverez ci-dessous, la liste des méthodes implémentées par wxLua 2.8.10.

Enable(true ou false)Activer ou désactiver la fenêtre de saisie de l'utilisateur.
Enable(n, true)Active ou désactive une touche individuelle dans le radiobox. (true ou false)
FindString("string")Trouve un bouton correspondant à la "string" donnée, retourne la position du s'il trouve, ou wxNOT_FOUND s'il n'est pas trouvé.
GetCount()Retourne le nombre d'éléments dans le contrôle.
GetSelection()Retourne la position de la sélection courante.
GetStringSelection()Renvoie le label de l'élément sélectionné ou une chaîne vide si aucun élément n'est sélectionné.
GetString(n)Retourne le libellé de l'élément à l'indice (n) donné.
SetString(n, "label")Définit le "label" pour l'élément (n) donné. (n démarre à 0)
SetSelection(int n)Définit la sélection à l'élément (n) donné ou supprime la sélection entièrement si n == wxNOT_FOUND.(n démarre à 0)
SetStringSelection("string")Sélectionne l'élément avec la chaîne spécifiée dans le contrôle.
Show(n, true)Affiche ou cache les boutons individuels. (true ou false) (n démarre à 0)

Un petit exemple.
require("wx") -- inutile si on utilise wxluafreeze.exe	

local frame = nil

function main()
-- Création d'une frame et de son panel.
	frame = wx.wxFrame(wx.NULL, wx.wxID_ANY, "wxRadioBox")
	frame:Centre()
	local panel = wx.wxPanel(frame, -1)
	
-- Création d'une liste d'items.
	local liste ={"Banane","Poire","Pomme","Fraise","Cerise"}

-- Création d'une RadioBox.
	local radioBox = wx.wxRadioBox(panel, -1, "Liste de fruits",
	                       wx.wxPoint(50, 10), wx.wxDefaultSize, 
	                       liste, 1, wx.wxRA_SPECIFY_COLS)

-- Gestion de la sélection.
	radioBox:Connect(-1, wx.wxEVT_COMMAND_RADIOBOX_SELECTED, 
	   function(event)
	      wx.wxMessageBox("Félicitaion, vous avez choisi une " 
		  ..radioBox:GetStringSelection())
	   end)
	  
	frame:Show(true)
end

main()
wx.wxGetApp():MainLoop()
					

Ce qui donne comme résultat.

image01

image02

logo wxWidgets Le savoir ne vaut que s'il est partagé par tous...
logo-internet_32x32.png Dernière mise à jour, le 5 décembre 2012.
Valid XHTML 1.0 Transitional

wxRadioBox
Revenir en Haut
Connexion à la base de données impossible