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

Classe: wx.wxMessageDialog().

Cette boîte de dialogue affiche un message, ainsi que des boutons pouvant être choisis parmi Ok, Cancel, Yes ou No. (Ok, Annuler, Oui ou Non).
Sous windows, une icône optionnelle peut être affichée, telle qu'un point d'exclamation ou d'interrogation.

La valeur retournée par nomObjet:ShowModal() indique quel bouton a été pressé.

Le constructeur: Explication.
messageBox = wx.wxMessageDialog (
  wxWindow       * parent,
  const wxString & message, = "Ceci est un petit message",
  const wxString & caption  = "Titre de la boîte",
  long  style               = wx.wxOK + wx.wxCENTER,
  const wxPoint  & pos      = wx.wxDefaultPosition	 
  )

parent est la fenêtre qui détient la boite de dialogue.

message est le message à afficher.

caption est le titre de la boîte de dialogue.

style est le style de la boîte de dialogue, qui peut être:

wx.wxOKAffiche un bouton "Ok".
wx.wxCANCELAffiche un bouton "Cancel".
wx.wxYES_NOAffiche un bouton "Yes et NO".
wx.wxYES_DEFAULTSélectionne "YES" par défaut. Utiliser avec wx.wxYES_NO.
wx.wxNO_DEFAULTSélectionne "No" par défaut. Utiliser avec wx.wxYES_NO.
wx.wxICON_EXCLAMATIONAffiche l'icon "!".
wx.wxICON_ERRORAffiche l'icon "Erreur".
wx.wxICON_HANDAffiche la même icon que wx.wxICON_ERROR.
wx.wxICON_QUESTIONAffiche l'icon "?".
wx.wxICON_INFORMATIONAffiche l'icon "Information".
wx.wxSTAY_ON_TOPSous Windows la boîte de message est affichée sur toutes les autres fenêtres.

pos est ignoré sous MS Windows.

Les méthodes.

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

Destroy()*Détruit la boîte de dialogue en toute sécurité.
ShowModal()Permet de sélectionner les boutons wx.wxID_OK, et wx.wxID_CANCEL.

* Destroy(): Utilisez cette fonction au lieu de supprimer l'opérateur.
Cadres et boîtes de dialogues ne sont pas détruits immédiatement lorsque cette fonction est appelée - ils sont ajoutés à la liste des fenêtres à supprimer plus tard, lorsque tous les événements de la fenêtre auront été traités.

Un exemple concret d'utilisation.
require("wx") -- inutile si on utilise wxluafreeze.exe

-- Création d'une frame et de son panel.
  local frame = wx.wxFrame(wx.NULL, wx.wxID_ANY, 
                            "wxMessageDialog")
  local panel = wx.wxPanel(frame, -1)

-- Centrage de la frame au milieu de l'écran.
  frame:Centre()	
----------------------------------------------------------------
  local bouton = wx.wxButton(panel, -1, "MessageBox")
  local texte = wx.wxStaticText( panel, -1, 
                           "Appuyez sur le bouton MessageBox.",
                            wx.wxPoint(110, 25))

function MessageBox(event)
	texte:SetLabel("Appuyez sur un des trois boutons.")
-- Création de la boîte de dialogue.
	local dialogBox = wx.wxMessageDialog(frame, 
                           "Ceci est un petit message.",
                           "wxMessageBox", wx.wxNO_DEFAULT +
                            wx.wxYES_NO + wx.wxCANCEL +
                            wx.wxICON_ERROR)
	local resultat = dialogBox:ShowModal()
    dialogBox:Destroy()

	if (resultat == wx.wxID_YES) then
		texte:SetLabel("Vous avez appuyé sur Oui.")
		elseif (resultat == wx.wxID_NO) then
			texte:SetLabel("Vous avez appuyé sur Non.")
		elseif (resultat == wx.wxID_CANCEL) then
			texte:SetLabel("Vous avez appuyé sur Annuler.")
	end
end
bouton:Connect(wx.wxEVT_LEFT_DOWN, MessageBox)

wx.wxGetApp():SetTopWindow(frame)
frame:Show(true)
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 7 octobre 2012.
Valid XHTML 1.0 Transitional

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