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

Scilab Discussion :

Interface graphique - créer plusieurs onglets sur une figure


Sujet :

Scilab

  1. #1
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2014
    Messages : 5
    Points : 2
    Points
    2
    Par défaut Interface graphique - créer plusieurs onglets sur une figure
    Bonjour,

    Je suis en train de créer une interface graphique sur Scilab et j'aimerais savoir s'il est possible de générer une fenêtre comportant plusieurs onglets.

    J'ai trouvé sur le forum MATLAB une discussion qui parle de ce que je voudrais faire :

    http://www.developpez.net/forums/d76...ui-celle-voir/

    Mais je n'ai pas encore trouvé d'équivalent sur Scilab, est-il possible de le faire ?

    Merci d'avance pour vos réponses.

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 308
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 308
    Points : 52 891
    Points
    52 891
    Par défaut
    C'est une fonctionnalité très récente (5.5.0) et assez peu documentée.

    Il y a un exemple (un teste unitaire) dans les sources : http://fossies.org/linux/misc/scilab...er.tag.tst?m=t

    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
    24
    25
    26
    27
    // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
    // Copyright (C) 2014 - Scilab Enterprises - Antoine ELIAS 
    // 
    // This file must be used under the terms of the CeCILL.
    // This source file is licensed as described in the file COPYING, which
    // you should have received as part of this distribution.  The terms
    // are also available at    
    // http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
     
    function tabs = createTab(uiType)
        f = figure("dockable", "off" ,"infobar_visible", "off", "toolbar_visible", "off", "menubar_visible", "off", "default_axes", "off", "layout", "border")
        f.axes_size = [470, 410];
     
        tabs = uicontrol(f, "style", uiType, "tag" ,"tab", "constraints", createConstraints("border", "center"));
     
        tab1 = uicontrol(tabs, "style", "frame", "tag", "tab 1", "string", "tab 1", "layout", "border");
        uicontrol(tab1, "string", "button 1");
     
        tab2 = uicontrol(tabs, "style", "frame", "tag", "tab 2", "string", "tab 2", "layout", "border");
        uicontrol(tab2, "string", "button 2");
     
        tab3 = uicontrol(tabs, "style", "frame", "tag", "tab 3", "string", "tab 3", "layout", "border");
        uicontrol(tab3, "string", "button 3");
    endfunction
     
    //tab
    tab = createTab("tab");
    Regarde aussi les Cours et tutoriels pour apprendre Scilab

  3. #3
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2014
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Génial !!! Merci beaucoup !
    Je vais essayer d'intégrer le code à mon interface.

    Un tout grand merci !!

  4. #4
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2014
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Dans le code, les onglets sont créés et dans chaque onglet de la fenêtre, il y a un bouton "button 1,2 ..." qui remplit la fenêtre.
    Savez-vous comment je pourrais afficher un fond classique que je pourrais compléter avec du texte et des "edit box" à la place de ce bouton ?

    J'ai essayé en créant une fonction à part dans laquelle je définis la mise en page de la fenêtre puis j'utilise le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    uicontrol(tab2,"callback","callback_type=2","coucou");
    Au lieu du code initial :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    uicontrol(tab2, "string", "button 2");
    Mais Scilab me renvoie l'erreur suivante :

    !--error 999 
    uicontrol : Type erroné de l'argument d'entrée n°1 : Une chaîne de caractères attendue.
    at line      26 of function createTab called by :  
    period_CO2 = createTab("tab");
    Savez-vous comment je pourrais faire ?

  5. #5
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2014
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    C'est bon, j'ai trouvé comment faire

  6. #6
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 308
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 308
    Points : 52 891
    Points
    52 891
    Par défaut
    Montre nous un petit exemple, ça pourra servir à d'autres.

  7. #7
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2014
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Comme vous disiez que la fonctionnalité était assez récente, j'ai tapé dans Google "scilab 5.5.0 nouveautés" et je suis tombée sur la vidéo de présentation du programme :



    Et le script de la présentation que l'on peut télécharger est repris en commentaire. Le modèle semble vraiment complet et ça aide surtout pour la syntaxe des propriétés des uicontrol je trouve .

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 22/09/2012, 16h27
  2. Création d'onglets sur une figure
    Par sinok23 dans le forum Interfaces Graphiques
    Réponses: 9
    Dernier message: 12/01/2011, 15h08
  3. Plusieurs plots sur une figure
    Par Newenda dans le forum MATLAB
    Réponses: 11
    Dernier message: 19/01/2010, 12h41
  4. Réponses: 21
    Dernier message: 22/05/2008, 15h08

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