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

Classe: wxTextAttr()

Cette classe représente les attributs de caractère et de paragraphe, ou de style, pour une plage de texte dans un wxTextAttr ou un wxRichTextCtrl. ( bien que cette dernière classe ne soit pas implémentée par wxLua )

fleche_droite.gif Pour pouvoir être opérationnel, il faut passer le style des textCtrl à:
wxTE_RICH ou wxTE_RICH2.
Liste des styles utilisés.
  • wxTEXT_ALIGNMENT_DEFAULT
  • wxTEXT_ALIGNMENT_LEFT
  • wxTEXT_ALIGNMENT_CENTRE
  • wxTEXT_ALIGNMENT_CENTER
  • wxTEXT_ALIGNMENT_RIGHT
  • wxTEXT_ALIGNMENT_JUSTIFIED
Le constructeur.
	attrib = wx.wxTextAttr()

	   -- Ou bien			
	   
	attrib = wx.wxTextAttr(
		const wxColour  &colText   = wx.wxColour,
		const wxColour  &colBack   = wx.wxColour,
		const wxFont    &font      = wx.wxFont,
		wxTextAttrAlignment  alignment = wx.wxTEXT_ALIGNMENT_XXXX
		)
Les méthodes.

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

GetAlignment()Retourne les flags d'alignement.
GetBackgroundColour()Retourne la couleur du fond.
GetFlags()Retourne les flags, indiquant quels attributs sont applicables.
GetFont()Créer et retourne une police spécifiée par les attributs de police dans l'objet wxTextAttr.
GetLeftIndent()Retourne le retrait à gauche en dixièmes de millimètre.
GetLeftSubIndent()Retourne un sous-retrait à gauche en dixièmes de millimètre.
GetRightIndent()Retourne le retrait à droite en dixièmes de millimètre.
GetTabs()Retourne un tableau de taquets de tabulation, exprimé en dixièmes de millimètre
GetTextColour()Retourne la couleur du texte.
HasAlignment()Retourne true si l'objet attribut spécifie l'alignement.
HasBackgroundColour()Retourne true si l'objet attribut spécifie une couleur de fond.
HasFlag(flag)Retourne true si le flag est présent.
HasFont()Retourne true si l'objet attribut spécifie les attributs de la police.
HasLeftIndent()Retourne true si l'objet attribut spécifie un retrait à gauche.
HasRightIndent()Retourne true si l'objet attribut spécifie un retrait à droite.
HasTabs()Retourne true si l'objet attribut spécifie des effets de texte.
HasTextColour(Retourne true si l'objet attribut spécifie la du texte.
IsDefault()Retourne false si nous avons un ensemble d'attributs, true autrement.
SetAlignment(alignment)Définit l'alignement du paragraphe. (wxTEXT_ALIGNMENT_XXX)
SetBackgroundColour(couleur)Définit la couleur de fond.
SetFlags(flags)Définit les flags à utiliser.
SetFont(font, flag)Définit les attributs de la police donnée. (wxFont &font, flags = wxTEXT_ATTR_FONT)
SetLeftIndent(indent, subIndent)Définit le retrait gauche et le sous-retrait en dixièmes de millimètre.
SetRightIndent(indent)Définit le retrait droite.
SetTabs(tabs)Définit les taquets de tabulation, exprimée en dixièmes de millimètre. (wxArrayInt &tabs)
SetTextColour(couleur)Définit la couleur du texte.

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

	-- Création de la frame.
	local frame = wx.wxFrame(wx.NULL, -1, "wxTextAttr")
	frame:Centre(wx.wxBOTH) -- Affichage au centre de l'écran.

	-- Création des attributs de départ pour un texte.
	local textAttr = wx.wxTextAttr(wx.wxColour(wx.wxBLUE), 
									wx.wxColour(255, 255, 0), 
									wx.wxFont(12, 
									wx.wxFONTFAMILY_MODERN, 
									wx.wxFONTSTYLE_NORMAL, 
									wx.wxFONTWEIGHT_NORMAL, 
									false, "Comic sans MS"), 
									wx.wxTEXT_ALIGNMENT_CENTER)
	-- Création d'un textCtrl.
	local texte ="La Cigale, ayant chanté \nTout l'été,\nSe trouva"
	.."fort dépourvue\nQuand la bise fut venue:\nPas un seul petit"
	.."morceau \nDe mouche ou de vermisseau...\n etc. etc."
	
	local textCtrl = wx.wxTextCtrl(frame,-1, "", wx.wxPoint(10, 10),
									wx.wxSize(370, 190), 
									wx.wxTE_MULTILINE + 
									wx.wxTE_NO_VSCROLL + 
									wx.wxTE_RICH2 + 
									wx.wxTE_READONLY)

	textCtrl:SetBackgroundColour(wx.wxColour(251, 242, 183))
	textCtrl:SetDefaultStyle(textAttr)
	textCtrl:AppendText(texte)

	-- Modification de la couleur du texte.
	textCtrl:SetStyle(24, 37, wx.wxTextAttr(wx.wxColour(wx.wxRED)))
	textCtrl:SetStyle(130,140,wx.wxTextAttr(wx.wxColour(wx.wxGREEN)))

	-- Modification de l'alignement pour une ligne.
	local newAlign = wx.wxTextAttr()
	newAlign:SetAlignment(wx.wxTEXT_ALIGNMENT_LEFT)
	textCtrl:SetStyle( 62,  86, newAlign)

	-- Modification de la couleur de fond pour quelques mots.
	local newCoulFond = wx.wxTextAttr()
	newCoulFond:SetBackgroundColour(wx.wxColour(254, 191, 210))
	textCtrl:SetStyle(99, 123, newCoulFond)

	--Modification de la Font pour un mot.
	local font = wx.wxFont(15, wx.wxFONTFAMILY_MODERN, 
							wx.wxFONTSTYLE_ITALIC, 
							wx.wxFONTWEIGHT_BOLD, false, 
							"Times New Roman")
	local newFont = wx.wxTextAttr()
	newFont:SetFont(font)
	textCtrl:SetStyle(38, 46, newFont)

	-- Démarrage de l'application.
	frame:Show(true)
	wx.wxGetApp():MainLoop()
					

Ce qui donne comme résultat.

image

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

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