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

Composants VCL Delphi Discussion :

Problème avec TabbedNotebook


Sujet :

Composants VCL Delphi

  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    191
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Février 2008
    Messages : 191
    Par défaut Problème avec TabbedNotebook
    Salut
    Mes amis j'ai un problème avec TabbedNotebook:
    j'ai créer une application qui fait des traitements sur un texte (Tsynmemo) alors j'ai préférai d'utiliser un TabbedNotebook au on créer dynamiquement des Tsynmemos suivant le choix de l'utilisateur jusqu'a mtn tous marche très bien mais le problème est lorsque je veux faire le traitement.

    le traitement ne fais que sur le premier Tsynmemo .
    Je pence il faut sélectionner le Tsynmemo parant.

    Comment faire pour ma fonction traite le Tsynmemo afichier.
    Une portion de programme

    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
    28
    29
     
    //Ouvrir un fichier 
    procedure TForm1.Ovrire1Click(Sender: TObject);
    var
    i: integer;
    SynMemo : TSynMemo;
    TabPage : TTabPage;
     //Debut
    begin
    //---------------------------------------------------------------------------------//
    //-- -----------------------------Ovrire un fichier --------------------------------//
    if opendialog1.Execute then
         begin
            ifnot (Uppercase(ExtractFileExt(opendialog1.FileName)) = '.SAL') then exit;
    //---------------------------------------------------------------------------------//
    with TabbedNoteBook1 do
    begin
    //La page créée devient la page courante
    PageIndex := Pages.Add(opendialog1.FileName);
    TabPage := TTabPage(Pages.Objects[PageIndex]);
    synMemo := TSynMemo.Create(Self);
    synMemo.Highlighter:=SynUsthbNewCppSyn1;
    synMemo.ActiveLineColor:=clAqua;
    synMemo.RightEdgeColor:=clRed;
    synMemo.Parent := TabPage;
    synMemo.Align := alClient;
    end;      
          end;
    end;
    Merci

  2. #2
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    faire le traitement
    Quel traitement?

    J'ai pas vraiment compris la question, mais pour visionner le TsynMemo créé il faut se positionner sur la Tabpage créé.

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    191
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Février 2008
    Messages : 191
    Par défaut plus explication
    merci pour votre réponse
    mon application c'est un mini compilateur l'utilisateur a le droit de créer plusieurs anglets chaque onglet contiens un tsynmemo pour écrire le programme.

    mais lorsque l'utilisateur clicque sur analyser le programme analyse se fait sur le tout
    simplement la fonction analyser elle fait pas la différence entre la nouvelle onglet et la première (onglet par défaut)

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    191
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Février 2008
    Messages : 191
    Par défaut Solution
    Ahem...Ahem

    J'ai posé une question et je vous donne la réponse:
    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
     
    procedure TForm1.Button1Click(Sender: TObject);
    var
      s: string;
      TabPage: TTabPage;
      i: integer;
    begin
      if TabbedNotebook1.Pages.Count < 1 then
        Exit;
     
      { Recherche, parmi les controles dont TabbedNoteBook1 est le parent,
      des TMemo}
      with TabbedNotebook1 do
      begin
        { Recherche de l'onglet actif
        ...noter l'astuce non documentée par Borland }
        TabPage := TTabPage(Pages.Objects[PageIndex]);
     
        for i := 0 to TabPage.ControlCount - 1 do
          if (TabPage.Controls[i] is TsynMemo) then
          begin
            s := TsynMemo(TabPage.Controls[i]).Text;
            //traitement sur s
          end;
      end;
    end;

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

Discussions similaires

  1. VC++ Direct3D8, problème avec LPD3DXFONT et LPD3DTEXTURE8
    Par Magus (Dave) dans le forum DirectX
    Réponses: 3
    Dernier message: 03/08/2002, 11h10
  2. Problème avec [b]struct[/b]
    Par Bouziane Abderraouf dans le forum CORBA
    Réponses: 2
    Dernier message: 17/07/2002, 10h25
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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