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

Interfaces Graphiques Discussion :

Creer dynamiquement des objets [Débutant]


Sujet :

Interfaces Graphiques

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 7
    Par défaut Creer dynamiquement des objets
    B'jour,

    J'aimerais créer plusieurs objets (ici Edit_Text) en fonction d'un nombre entré par l'utilisateur. Exemple: si on entre 3 dans un Edit, il nous génère 3 Edit_Text. Je veux juste créer une interface dynamique.

    Voilà tout ce que j'ai pu coder (c'est à pourtant l'air si simple..), mais après la création de l'objet il se bloque : le test 1 est ok, l'objet est créer, mais le test n°2 ne s'effectue pas. Je trouve pas de cas similaires alors j'aimerais savoir si c'est possible à faire et pourquoi ce code peut bien bugger ?!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <div style="margin-left:40px">%l'Edit_Text où on entre le nombre de futur Edit_Text qu'on veut
    function degre_Callback(hObject, eventdata, handles)
     
    degre = get(hObject,'String');
     
    for i = 0:1: degre
     
        %test n°1 sur un label pour vérifiier l'incrémentation de la boucle
        ObjSelect = findobj(gcf,'Tag','test');
        set(ObjSelect,'String',i);
     
        % Création de l'objet Uicontrol Edit_Text
        handles(i)=uicontrol('style','edit',...
        'units','normalized',...
        'position',[(0.09+i) 0.72 0.03 0.035],...
        'string',num2str(i),...
        'tag',num2str(i));
     
        %test n°2 pour controler que la bonne création de l'objet
        ObjSelect = findobj(gcf,'Tag','test');
        set(ObjSelect,'String','Objet(s)Creer');
     
    end</div>
    En erreur il me dit cela :
    ??? Assignment between unlike types is not allowed.

    Error in ==> Polyno>degre_Callback at 49
    handles(i)=uicontrol('style','edit',...

    Error in ==> gui_mainfcn at 95
    feval(varargin{:});

    Error in ==> Polyno at 17
    gui_mainfcn(gui_State, varargin{:});

    ??? Error using ==> Polyno('degre_Callback',gcbo,[],guidata(gcbo))
    Assignment between unlike types is not allowed.

    ??? Error while evaluating uicontrol Callback
    Si ça peut aider....

    Merci d'avance,

  2. #2
    Membre émérite

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2007
    Messages
    979
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 979
    Par défaut
    Salut,

    J'ai deux questions :


    handles
    est bien initiée ?

    tu fait handles(0) pour i =0 ?

    ++

  3. #3
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    Première chose : chez MATLAB les indices commencent à 1 jamais à 0.
    Etonnant d'ailleurs que tu n'aies pas eu plutôt ce message d'erreur :Index into matrix is negative or zero.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 7
    Par défaut
    Merci ^_^

    En effet les indices commencent à 1 pas à 0, j'ai juste modifier ma boucle c'est parfait.
    Et sinon le bug vient bien de l'initialisation du handles (parce que ça s'initialise en fait je me suis toujours arrêter sur la définition d'objet courant ). Lorsque je remplace par exemple : par ça me créer 51 nouveau Edit (serait-ce un maximum ?!) en respectant le déplacement les bon tags et tout.
    Donc je n'est plus qu'à me renseigner là dessus ça aide vraiment de savoir par où chercher, merci beaucoup, problème résolu j'éditerais quand j'aurais la solution

  5. #5
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    Citation Envoyé par Uragiru Voir le message
    Lorsque je remplace par exemple : par ça me créer 51 nouveau Edit (serait-ce un maximum ?!)
    Je ne comprends pas ta question entre parenthèses.
    Tu as essayer avec degre > 51 et ça s'arrête quand même à 51, c'est ça ?

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 7
    Par défaut
    Non, non en degré j'avais rentré 3 mais qu'importe le degré que je rentre il me fais toujours 51 Edit_Text, alors je me demandais pourquoi il s'arrêtait toujours à ce nombre, si il n'y avais pas une limite d'objets possible à insérer

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

Discussions similaires

  1. Créer dynamiquement des objets Java
    Par choko83 dans le forum Débuter avec Java
    Réponses: 15
    Dernier message: 02/05/2008, 14h53
  2. Réponses: 1
    Dernier message: 17/04/2007, 14h43
  3. Créer une GUI et insérer dynamiquement des objets
    Par nix74 dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 25/11/2006, 09h04
  4. [RCP]Creer dynamiquement des perspectives
    Par remax_ren dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 26/05/2006, 16h09
  5. [VBA-E] Est il possible de creer dynamiquement des controles en VBA
    Par bbkenny dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 13/08/2004, 20h04

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