1. #1
    Futur Membre du Club
    Inscrit en
    août 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : août 2007
    Messages : 6
    Points : 5
    Points
    5

    Par défaut Utilisation des TFrame

    Bonjour à vous j'espère que vous allez bien et que je ne me suis pas trompé de section pour envoyer mon poste,

    Bref voilà mon problème, j'ai commencé il n'y a pas longtemps à utiliser les frames dans mes softs sauf que je ne me suis pas encore habitué à bien les exploités.

    Actuellement je suis coincé sur l'utilisation des frames, dites-moi comment activer ou désactiver un bouton par ex (si je comprends ça je pense comprendre le principe)

    Exemple :

    Je suis sur form1 et j'appelle à Forme2.button1.enabled := false ; // c'est le bon code

    Je suis sur form1 et si j'appelle la frame : TFrame1.button1.enabled := false ; // c'est faux or que si je suis sur la même Frame et je click sur le code TFrame1.button1.enabled := false ça fonctionne.

    Merci par avance.

  2. #2
    Membre actif Avatar de der§en
    Homme Profil pro
    Développeur informatique
    Inscrit en
    septembre 2005
    Messages
    256
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Services de proximité

    Informations forums :
    Inscription : septembre 2005
    Messages : 256
    Points : 205
    Points
    205

    Par défaut

    Un bout de code aurais sûrement aidé à mieux comprendre ta problématique mais un premier truc me fait "tiquer" dans ton explication,c'est le "T" devant frame1, il me semble que tu mélanges la classe et son instance dans ta Form…

  3. #3
    Futur Membre du Club
    Inscrit en
    août 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : août 2007
    Messages : 6
    Points : 5
    Points
    5

    Par défaut

    Merci de votre repense ci-joint une capture d’écran de mon soucie j'espère que vous allez comprendre
    1- j'utilise des des frames dans ma form.
    2- je veut que quand je click sur le 'bouton true' a partir de ma form il modifie la proprièté du bouton 1 sur ma Frame
    j'espère que vous allez pouvoir m'aider


    Nom : 803121frame.jpg
Affichages : 83
Taille : 161,1 Ko

  4. #4
    Membre du Club Avatar de Coudrak
    Profil pro
    Inscrit en
    avril 2002
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2002
    Messages : 55
    Points : 69
    Points
    69

    Par défaut

    Frame21.button1.enabled := false;

  5. #5
    Futur Membre du Club
    Inscrit en
    août 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : août 2007
    Messages : 6
    Points : 5
    Points
    5

    Par défaut

    ça fonctionne merci beaucoup mais dite moi si j'ai plusieurs frame et que je veut affiché d'autre a la place de la 21 je fait comment ?

  6. #6
    Expert confirmé
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    juillet 2013
    Messages
    2 078
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : juillet 2013
    Messages : 2 078
    Points : 4 597
    Points
    4 597

    Par défaut

    Ce sont les noms automatiques de Builder: tu sembles avoir créer 21 TFrame

    Pour changer le nom, il y a une propriété name.
    Peut-être en double cliquant classiquement sur ta frame dans l’arborescence des éléments de ta fenêtre.


    Et la version experte, c'est modifier le fichier .dfm ainsi que le fichier entête

  7. #7
    Futur Membre du Club
    Inscrit en
    août 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : août 2007
    Messages : 6
    Points : 5
    Points
    5

    Par défaut

    Merci beaucoup tu me sauve la vie (mais si je veut affiché une autre frame a la place de la frame21 et fait comment ?)
    Frame21.visible := false;
    Frame22.visible := true;
    Ca va fonctionné ???

  8. #8
    Membre éprouvé Avatar de guillemouze
    Profil pro
    Inscrit en
    novembre 2004
    Messages
    790
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : novembre 2004
    Messages : 790
    Points : 1 263
    Points
    1 263

    Par défaut

    Citation Envoyé par foetus Voir le message
    Ce sont les noms automatiques de Builder: tu sembles avoir créer 21 TFrame
    En fait non, il a une TFrame2, et c'est la 1ere posée dans sa form, donc frame2-1

    Citation Envoyé par hefied Voir le message
    Merci beaucoup tu me sauve la vie (mais si je veut affiché une autre frame a la place de la frame21 et fait comment ?)
    Frame21.visible := false;
    Frame22.visible := true;
    Ca va fonctionné ???
    oui, ou sinon tu les crée dynamiquement :
    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
     
    TForm1 = class(TForm)
      ...
    private
      InnerFrame: TFrame;
    ...
     
     
    procedure TForm1.Button2Click(...);
    begin
      InnerFrame.Free; //supression de l'ancienne frame
      InnerFrame := TFrame3.Create(Self);
      InnerFrame.parent := Self;
      InnerFrame.FreeNotification(Self); // ca, tu dois le faire si tu conserve ta variable innerframe, + implementation de la fonction surchargée Notification dans ta classe pour passer ta variable à nil si elle est detruite par quelqun d'autre
    end;

  9. #9
    Membre actif Avatar de der§en
    Homme Profil pro
    Développeur informatique
    Inscrit en
    septembre 2005
    Messages
    256
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Services de proximité

    Informations forums :
    Inscription : septembre 2005
    Messages : 256
    Points : 205
    Points
    205

    Par défaut

    Tu devrais créer une frame parent contenant tout ce qui sera commun à toute tes drames, et travailler avec un un pointeur sur un la frame parent dans ta form, exemple à mettre dans la déclaration de ta form:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     FCurrentFrame: TFrameParent;
    Comme cela tu pourrais appeler le bouton de n'importe laquelle des drames enfants avec un simple appel du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     FCurrentFrame.Button1.Enable := True;

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

Discussions similaires

  1. Règles d'utilisation des forums C
    Par Franck.H dans le forum C
    Réponses: 3
    Dernier message: 26/01/2008, 17h35
  2. [CR8.5] Utilisation des codes barre
    Par Robert dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 20/01/2005, 16h13
  3. utilisation des sockets sous windows
    Par Tupac dans le forum Réseau
    Réponses: 2
    Dernier message: 21/12/2002, 18h24
  4. [Crystal Report] Utilisation des vues de sql serveur
    Par Olivierakadev dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 15/11/2002, 17h44
  5. [BCB5] Utilisation des Ressources (.res)
    Par Vince78 dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/04/2002, 16h01

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