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 :

communication entre interfaces graphiques [Débutant]


Sujet :

Interfaces Graphiques

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 52
    Points : 35
    Points
    35
    Par défaut communication entre interfaces graphiques
    Bonjour à tous

    Bon j'ai programmé une interface graphique matlab pour les operations dans le champs de galois, mon objectif c'est de diviser cette interface à des sous interfaces et d'avoir au debut un menu et des boutons et faire appelle aux autres sous interfaces en concervant les parametres entrés au debut.

    Par exemple dans le menu principal en fait entrer le dergré du polynome primitif et un nombre premier p et en fonction de p en fera l'appelle à une autre interface.
    Pourriez vous m'aider à trouver une solution ?
    Merci d'avance.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Tu trouveras ici et ici deux exemples de façon de faire.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 52
    Points : 35
    Points
    35
    Par défaut
    Merci pour votre reponse, je vais suivre la demarche citée dans les deux exemples que vous avez proposé.

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 52
    Points : 35
    Points
    35
    Par défaut
    s'il vous plait une autre chose.
    je fait des operations sur des vecteurs ligne et ça me retourne un vecteur colone dans static text sachant que le resultat doit etre un vecteur ligne . J'ai essayé de faire le transposé du resultat mais ça marche pas voila mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    a = str2num(get(handles.edit1,'string'));
    b = str2num(get(handles.edit2,'string'));
    a = a -48;
    b = b -48;
    e = bitxor(a,b);
    set(handles.text6,'string',e);
    Merci d'avance

  5. #5
    Invité
    Invité(e)
    Par défaut
    Attention, le lien que je t'ai donné dans l'autre discussion convertit les string, donc il ne faut pas utiliser str2num
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    a = get(handles.edit1,'string');
    b = get(handles.edit2,'string');
    Ensuite, tu obtiens un string par le get, et tu dois aussi fournir un string par le set:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set(handles.text6,'string',num2str(e));

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 52
    Points : 35
    Points
    35
    Par défaut
    Merci beacoup ça se voit clairement maintenant

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 52
    Points : 35
    Points
    35
    Par défaut
    une autre chose s'il vous plait Je veut faire des boutons de validation (OK) ou annulation (Annuler) dans l'interface... et aussi comment cliqué sur la touche entrée du clavier pour activer une bouton ^^!
    Pourriez vous m'indiquer comment ?
    Merci d'avance

  8. #8
    Invité
    Invité(e)
    Par défaut
    Pour créer un bouton,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    uicontrol('style','pushbutton',...
        'string','OK',...
    %   + autres propriétés
    Pour la touche entrée, il te faut utiliser la propriété KeyPressFcn:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    figure('KeyPressFcn',@PressFonction)
     
    function PressFonction(obj,evnt)
        if strcmp(evnt.Key,'return') % 'return' => touche entrée
            % ...
        end

  9. #9
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 52
    Points : 35
    Points
    35
    Par défaut
    merci pour votre reponse.
    j'ai essayé avec ça mais peut-être que j'ai pas bien saisi les choses

    je vous donne mon code et precisez-moi où je dois mettre ces fonctions:

    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
    function pushbutton2_Callback(hObject, eventdata, handles)
     
    choix_nb = get(handles.choixprimnb,'string');
    if (choix_nb == '1')
        prim1;
    elseif (choix_nb == '3')
        prim3;
    elseif (choix_nb == '5')
        prim5;
    elseif (choix_nb == '7')
        prim7;
    elseif (choix_nb == '13')
        prim13;
    else
        erreur;
    end
     
     
    function choixnb_Callback(hObject, eventdata, handles)
    cette dernière fonction choixnb c'est là où on édite le numéro choisi. Ce que je veux c'est appuyer sur la touche entrée pour faire le test. Vous avez bien expliqué dans l'autre réponse comment, maintenant je veux savoir où on doit mettre l'en-tête de la fonction OK dans mon code ^^!.

    Et juste une chose comment faire le complément à deux en matlab? et merci infiniment

  10. #10
    Invité
    Invité(e)
    Par défaut
    D'après le prototype de tes fonctions, je présume que tu travailles avec guide.
    Donc il faut que tu ailles dans les propriétés de la figure, et cliques sur le bouton correspondant à KeyPressFcn, normalement, la fonction correspondante se créera automatiquement dans ton fichier .m
    De là, il ne reste plus qu'à soit:
    - Recopier le même code que tu as mis dans le callback du bouton OK.
    - Créer une nouvelle fonction avec ce code, et l'appeller dans les deux autres.

    Il n'y a pas de fonction toute faite pour faire le complément à deux, mais je pense que l'on peut facilement y arriver en utilisant les fonctions dec2bin/bin2dec.

  11. #11
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 52
    Points : 35
    Points
    35
    Par défaut
    merci pour cette derniere indication ça m'a aidé à progresser dans mon travail

  12. #12
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 52
    Points : 35
    Points
    35
    Par défaut
    Bonjour

    Etant donné deux interfaces graphiques, une pour le calcul des coefficients d'un 'polynome générateur' et l'autre pour coder un mot en utilisant ce polynome.
    Le probleme c'est comment conserver les coefficient du polynome pour que l'interface du codage puisse l'utiliser ?

    Merci d'avance.
    Abdousoft.

  13. #13
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Je ne sais pas comment sont organisées tes deux interfaces, mais tu peux commencer par regarder cette discussion.

  14. #14
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 52
    Points : 35
    Points
    35
    Par défaut
    Merci Winjerome.
    Une autre chose je veut integer le logo de mon école dans l'interface(crée par guide) Comment faire???
    merci d'avance.

  15. #15
    Invité
    Invité(e)
    Par défaut
    Tu peux rajouter un objet Axes à l'endroit où tu veux le mettre, puis y afficher ton image à l'aide de la fonction imshow comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    I = imread(...);
    imshow(I,'parent',handles.monAxes)

  16. #16
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 52
    Points : 35
    Points
    35
    Par défaut
    Bonjour
    J'aimerai continuer à poser des questions relative au sujet de la discution au lieu de créer une autre (si c'est possible?)

    Donc j'ai comme probleme cette fois : un test qui ne marche pas dans ce code
    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
    p= str2num(get(handles.prim,'string'));
    a=str2num(get(handles.edit1,'string'));
    aa=get(handles.edit4,'string');
    if (isempty(p))
        remplir_p;
    elseif ((~isprime(p)))
        notprim;
    elseif (length(a)~=0) && (length(aa)==0)
        M1=[a];
        if (isequal(M1()>p-1,zeros(length(M1)))==0)   erreur;
        else
    rang_m1=gfrank(M1,p);
    set(handles.text1,'string',num2str(rang_m1));
        end
    % suite de code ...
    explication:
    je fais un test sur les elements de la matrice a si ils dépassent p-1 alors un message d'erreur va s'afficher (depass sinon on continu
    malgré ça le programme (fait le test) affiche le message d'erreur qlqsoit les element de la matrice.
    j'espere que ça soit claire, dans ce cas si vous pourriez m'aider ?

  17. #17
    Invité
    Invité(e)
    Par défaut
    Le problème est que zeros(length(M1)) génère une matrice et non un vecteur, et fausse alors le if: zeros(1,length(M1)).
    Mais tu as plus simple pour faire cela avec la fonction ANY:
    Quelques remarques:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    elseif length(a)~=0) && (length(aa)==0
    peut être remplacé par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    elseif ~isempty(a) && isempty(aa)
    M1=a; tu n'as pas besoin des crochets

  18. #18
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 52
    Points : 35
    Points
    35
    Par défaut
    Merci Mr Winjerome pour ton aide précieux ça marche maintenant

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

Discussions similaires

  1. Problème de communication entre interfaces VB6
    Par VBAG38 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 18/12/2012, 14h27
  2. communication entre interface et mfile
    Par shun_light dans le forum Interfaces Graphiques
    Réponses: 1
    Dernier message: 13/10/2011, 11h25
  3. Réponses: 4
    Dernier message: 08/03/2011, 12h10
  4. Réponses: 1
    Dernier message: 07/01/2010, 00h07
  5. Lien entre interface graphique
    Par schpice dans le forum MFC
    Réponses: 5
    Dernier message: 03/05/2007, 14h25

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