wxDev.fr, le portail francophone consacré à wxWidgets ! ( The french portal for wxWidgets )  
Esp. membre
Recheche rapide



Recherche avancée
Statistiques
Membres inscrits :668

Membres en ligne : 0
Invités en ligne : 8
Pub hébergeur
Pourquoi cette pub ?

Valid XHTML 1.0 Transitional

Valid CSS2

Menu forum (navigation):
Pages: 1  
 
Accueil » Accueil forums » Utilisation générale wxWidgets
» wxGrid et wxTextValidator
Conversation (Résolue) : wxGrid et wxTextValidator
04-08-2011 09:54:14  wxGrid et wxTextValidator #1
ajm (Membre)
Inscrit le : 16-03-2011
Messages: 38
Snippets: 0
Tutoriels: 0
Hors ligne
Bonjour,

J'ai un wxGrid dans mon application, et je veux qu'on ne peut pas taper que des chiffres (0-9) dans les cellules et au lieu de '.' celui-ce change automatiquement en ','.  J'ai donc essayé d'utiliser le wxTextValidator mais je n'arrive pas à le faire.
----------
Finalement j'ai trouver une solution, je n'ai pas utiliser le wxTextValidator mais j'ai exploité le code dans "http://www.wxdev.fr/snippet19-wxGrid-Valider_cellule_et_deplacer_curseur_avec_fleches.html"

Voici le code qui contrôle l’éditeur dans une cellule:
void wxGrid2Frm::WxGrid1EditorCreated(wxGridEditorCreatedEvent& event)
{
    editor=(wxRichTextCtrl*)event.GetControl();
    editor->Connect(wxEVT_KEY_UP,wxKeyEventHandler(wxGrid2Frm::wxGrid2FrmKeyUp),NULL,this);

}


void wxGrid2Frm::wxGrid2FrmKeyUp(wxKeyEvent& event)
{
    if (WxGrid1->IsCellEditControlEnabled ())
    {
    wxString txt,num=editor->GetValue();
    for(int i=0;i<int(num.Len());i++)
        {
         wxString tmp="";
         tmp<<num[i];
         if(tmp.IsNumber() and tmp!="-" and tmp!="+")txt<<num[i];
         else if((tmp=="." or tmp==",") and txt.Freq(',')==0)txt<<","; 
        }
    editor->SetValue("");
    editor->AppendText(txt);
    }
}

Si vous voulez essayer l'application, télécharger le fichier dans la lien ci-dessous:

http://www.megaupload.com/?d=AXHSHGSP

Dernière modification par ajm (19-08-2011 08:42:22)

Menu forum (navigation):
Pages: 1  
 
Accueil » Accueil forums » Utilisation générale wxWidgets
» wxGrid et wxTextValidator