Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Probleme avec TabbedNotebook [ Divers / Aide et documentation ] (cheragasalhi)

lundi 25 février 2008 à 11:46:58 | Probleme avec TabbedNotebook

cheragasalhi

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.

Merci


lundi 25 février 2008 à 12:00:32 | Re : Probleme avec TabbedNotebook

cheragasalhi

{

une portion de code source pour la création d'un anglet

}

procedure TForm1.Ovrire1Click(Sender: TObject);
var
i: integer;
SynMemo : TSynMemo;
TabPage : TTabPage;
 //Non documenté dans l'aide de Delphi
begin
//---------------------------------------------------------------------------------//
//-- -----------------------------Ovrire un fichier --------------------------------//

if opendialog1.Execute then
     begin
        ifnot (Uppercase(ExtractFileExt(opendialog1.FileName)) = '.SAL') thenexit;
//---------------------------------------------------------------------------------//
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;

lundi 25 février 2008 à 23:28:26 | Re : Probleme avec TabbedNotebook

Delphiprog

Administrateur CodeS-SourceS
Si j'ai bien compris la question , la réponse est simple :
comme la fiche Form1 est propriétéaire de tous les composants TSynMemo, fais une boucle parcourant les composants de cette fiche. Si, dans cette boucle, le composant est du type TSynMemo, alors tu appliques le traitement.

exemple classique et basique :
Dans la portée de la fiche :
for i := 0 to ComponentCount - 1 do
    if Components[i] is TSynMemo then
        TSynMemo(Components[i]).LaMéthodeAAppeler;


May Delphi be with you !

Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.

mardi 26 février 2008 à 11:10:16 | Re : Probleme avec TabbedNotebook

cheragasalhi



Salut
merci pour votre réponse, vous avez approché de la réponse mais...
Je  ré explique:


Mon programme c'est un mini compilateur(il sera publier par la suite dans le site) l'utilisateur a le droit de créer ou importer des fichiers on met le contenu de chaque fichier a l'aide un synmemo dans un anglet indipendant (création dynamique des anglets).
le problème est dans  la fonction analyser ( le traitement ) par se que cette fonction a comme paramètre d'entre STRING (c'est le texte de synmemo) alors je cherche une manière pour ma fonction reçoit le contenu de synmemo qui est dans l'anglet active ou afficher par l'utilisateur .(j'arrive pas faire la différance entre les synmemos qui ont été déjà créer dynamiquement )

le corps de la procédure : procedure TForm1.Analyse_lexical(var chain:string);

l'appel de la procédure:   procedure TForm1.Button1Click(Sender: TObject);
                                             begin
                                                    
Analyse_lexical(synmemo.text);

                                             end;

je propose:                       procedure TForm1.Button1Click(Sender: TObject);
                                             var le_texte string;
                                              begin
                                               
//le_texte resoit synmemo.text de l'anglet actif
                          le_texte:=??????????;

                                                     Analyse_lexical(synmemo1.text);
                                             end;

remarque: merci de votre suivez.



mardi 26 février 2008 à 20:33:15 | Re : Probleme avec TabbedNotebook

Delphiprog

Administrateur CodeS-SourceS
Réponse acceptée !

Ok, merci pour ces précisions qui nous amènent à ce nouveau code dans lequel il faudra remplacer TMemo par TSynMemo. Je te laisse ce plaisir :

procedure TForm1.Analyse_lexical(var chain: string);
begin
  ShowMessage(chain);
end;

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 TMemo) then
      begin
        s := TMemo(TabPage.Controls[i]).Text;
        Analyse_lexical(s);
      end;
  end;
end;

May Delphi be with you !


Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.


mardi 26 février 2008 à 23:52:39 | Re : Probleme avec TabbedNotebook

cheragasalhi

Réponse acceptée !


s'il ya un mot plus segnificartife que merci alors veuillez l'accepter



Cette discussion est classé dans : problème, créer, probleme, tabbednotebook, tsynmemo


Répondre à ce message

Sujets en rapport avec ce message

Probleme p-ê ben stupide mais ... [ par stage ] Bon ok j'explique ( sa risque d'être difficile lol ):PJe me suis créer un composant de type TPanel et il ce nomme Tmp.ce compsant fait des petits bout probleme de création de base de donnée [ par Raph ] bonjour,je cherche à réaliser un logiciel qui me permettrait à partir d'une base de donnée de créer une base de donnée fille ne contenant qu'un certai tabbednotebook [ par Pegase20 ] bonjour, g creer des tabbednotebooks(avec Delphi 5.0), jusque la pa de probleme! je veux afficher une nouvelle page lorsque je clique sur un bouton (c états access en delphi [ par Metrox ] 'lut all,J'ai un problème!Je dois pouvoir trier les enregistrements de ma DB acess et créer ainsi dynamiquement des pages prêtes à être imprimées!J'ai Problème de Socket [ par chicoboss6 ] yep,voila, je suis entrain de créer une gestion de réseau avec delphi 7 et j'ai un probleme au niveau des sockets : Je ne vois pas trop comment les dé Problème fichier INI [ par TiDaN326 ] Bonjour à tous :)Bon je me sert de la fonction pour créer/lire des fichiers INI... jusque là, tout va bien, mais comment je fait pour créer le fichier Probleme avec un activeX [ par DeltaFX ] Voila mon probleme : A l'install de VideoCapX de fatthsoft, l'install s'interrompt avec un message d'erreur de regsvr32, erreur  code 1157 : problèm Probleme avec un QuickReport [ par cmoimeme ] Bonjour voici mon problème ,J'ai crée un programme avec des QuickReport il fonctionne bien sur mon pc avec Delphi 6 mais lorsque j'essaye de le faire Probleme DELPHI/DBASE [ par SARRAZIN TEC ] Bonjour,J'aurais besoin d'aide pour lire une table DBASE 4 non reconnu. En fait un logiciel développé sous WINDEV génére des tables DBASE (4 au dire d ChildForm Indépendantes [ par kizermomo ] Bonjour a tous,  en espérant être assez clair et précis sur ma demande. Voici mon problème:je crée un application qui utilise une MDIForm et plusieurs


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,562 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.