IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

wxWidgets Discussion :

wxTextCtrl : multiligne et copier-coller


Sujet :

wxWidgets

  1. #1
    Membre éprouvé
    Avatar de Ange_blond
    Homme Profil pro
    Ingénieur développement en 3D temps réel
    Inscrit en
    Mars 2007
    Messages
    902
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement en 3D temps réel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2007
    Messages : 902
    Points : 1 179
    Points
    1 179
    Par défaut wxTextCtrl : multiligne et copier-coller
    Bonjour,

    Je m'initie à wxWidget depuis quelques heures pour un petit projet basique.
    Le but est de faire une simple lecture/traitement/sortie de texte.

    J'ai fait deux wxTextCtrl pour l'input (coller) et l'output(copier).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    	// input text
    	inputText = new wxTextCtrl(panel, -1, "test\nhaha", wxPoint(2,2), wxSize(350,399));
    	inputText->SetEditable(true);
    	inputText->SetHelpText("Paste here");
    	inputText->SetWindowStyle(wxTE_MULTILINE);
     
    	// output text
    	outputText = new wxTextCtrl(panel, -1, "result", wxPoint(352,2), wxSize(448,399));
    	outputText->SetEditable(false);
    	outputText->SetHelpText("Get here");
    	outputText->SetWindowStyle(wxTE_READONLY);
    Malheureusement, je n'arrive pas à coller dans le 1er, ni à copier depuis le 2eme...
    Je ne trouve pas comment activer ces options dans la doc...

    Un p'ti coup de main ?
    Merci.
    "le langage C permet de tout faire, y compris se tirer dans le pied. Le langage C++ permet de tout faire, y compris se tirer dans le pied - et réutiliser la balle"

  2. #2
    Membre éprouvé
    Avatar de Ange_blond
    Homme Profil pro
    Ingénieur développement en 3D temps réel
    Inscrit en
    Mars 2007
    Messages
    902
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement en 3D temps réel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2007
    Messages : 902
    Points : 1 179
    Points
    1 179
    Par défaut
    Bon, autant pour moi c'est le fait qu'il n'y ai pas de bon ID qui les fesais pas marcher comme il faut...

    Néanmoins, j'ai une nouvelle question a présent (histoire de ne pas etre venu pour rien ^^)

    Quand je tape du texte dans mon champ editable, la touche entrer ne fait pas de retour à la ligne...
    Idem en collant, seule la 1ere ligne se colle ...

    Une idée ?
    "le langage C permet de tout faire, y compris se tirer dans le pied. Le langage C++ permet de tout faire, y compris se tirer dans le pied - et réutiliser la balle"

  3. #3
    Membre averti Avatar de wxXav
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Décembre 2008
    Messages
    214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur amateur

    Informations forums :
    Inscription : Décembre 2008
    Messages : 214
    Points : 354
    Points
    354
    Par défaut
    Salut.

    Citation Envoyé par Ange_blond Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    	// input text
    	inputText = new wxTextCtrl(panel, -1, "test\nhaha", wxPoint(2,2), wxSize(350,399));
    	inputText->SetEditable(true);
    	inputText->SetHelpText("Paste here");
    	inputText->SetWindowStyle(wxTE_MULTILINE);
     
    	// output text
    	outputText = new wxTextCtrl(panel, -1, "result", wxPoint(352,2), wxSize(448,399));
    	outputText->SetEditable(false);
    	outputText->SetHelpText("Get here");
    	outputText->SetWindowStyle(wxTE_READONLY);
    Tu devrais simplifier le code.
    Pour le premier, le "SetEditable(true)" n'est pas nécessaire, puisque c'est le style par défaut d'une zone de texte. Quand au style, il vaut mieux, à mon avis, le spécifier lors de la création du contrôle.
    Ce qui donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    	// input text
    	inputText = new wxTextCtrl(panel, -1, "test\nhaha", wxPoint(2,2), wxSize(350,399), wxTE_MULTILINE);
    	inputText->SetHelpText("Paste here");
    Pour le deuxième : mêmes remarques :
    • le "SetEditable(false)" n'est pas utile puisque tu peux spécifier le style wxTE_READONLY
    • il faut penser à mettre le style wxTE_MULTILINE pour que cette "option" soit active

    Ce qui donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    	// output text
    	outputText = new wxTextCtrl(panel, -1, "result", wxPoint(352,2), wxSize(448,399), wxTE_MULTILINE | wxTE_READONLY);
    	outputText->SetHelpText("Get here");
    Normalement, comme ça, il n'y a pas de raison que ça ne marche pas.

    @+
    Xav'

  4. #4
    Membre éprouvé
    Avatar de Ange_blond
    Homme Profil pro
    Ingénieur développement en 3D temps réel
    Inscrit en
    Mars 2007
    Messages
    902
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement en 3D temps réel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2007
    Messages : 902
    Points : 1 179
    Points
    1 179
    Par défaut
    \o/

    Merci ! c'était exatement ça !
    "le langage C permet de tout faire, y compris se tirer dans le pied. Le langage C++ permet de tout faire, y compris se tirer dans le pied - et réutiliser la balle"

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB.NET] copier coller d'une valeur
    Par mic56 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 08/06/2004, 11h43
  2. [Swing]copier coller... dans le menu.
    Par parksto dans le forum Composants
    Réponses: 3
    Dernier message: 10/05/2004, 22h56
  3. Copier coller Fichier windows
    Par KPitN dans le forum Windows
    Réponses: 8
    Dernier message: 20/04/2004, 17h32
  4. Copier Coller une ligne d'une table avec modif ?
    Par nolan76 dans le forum Requêtes
    Réponses: 4
    Dernier message: 04/03/2004, 16h34
  5. [Débutant] Conserver la couleur lors d'un copier coller
    Par ADIDASman dans le forum JBuilder
    Réponses: 2
    Dernier message: 21/05/2003, 18h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo