Utilisation de TabControl

Utilisation de TabControl - Delphi/Pascal - Programmation

Marsh Posté le 02-08-2010 à 22:10:47    

Bonjour,
 
Je suis entrain de réaliser une petite application, brièvement je voulais utiliser un TabControl qui se compose de deux onglets :
 
DONNE CREATION SCREEN  
DONNE CANCEL    SCREEN
 
Dans le TabControl j'ai insérer un memo3, ce dernier reçois l'exécution du script en se basant sur deux autres memo (1&2), par exemple:
 
 memo3.lines.Add ((memo1.Lines[i])); (1)
 memo3.lines.Add ((memo2.Lines[i])); (2)
 
Je cherche un code qui m'affiche le résultat de création  memo3.lines.Add ((memo1.Lines[i])) ; (1) dans ( DONNE CREATION SCREEN  ' Premier onglet de TabControl') .
Et le second onglet il m'affiche le résultat d'effacement memo3.lines.Add ((memo2.Lines[i])) ; (2) dans ( DONNE CANCEL SCREEN  ' Premier onglet de TabControl').
 
 
NB : Quand on est on mode création on ne peut pas se déplacer entre les deux onglets du TabControl, c’est pour cette raison, le système nous donne la possibilité d’utiliser un seul memo qui est memo3.
 
Il me reste seulement se problème, merci de m’aider, je vous attends mes frères pour votre suggestions comme d’habitude  

Reply

Marsh Posté le 02-08-2010 à 22:10:47   

Reply

Marsh Posté le 03-08-2010 à 12:01:11    

Salut,
 
En mode création, il faut changer la propriété tabindex de ton TabControl pour changer l'onglet actif.
 
Pour le reste, je ne suis pas sur d'avoir bien compris ce que tu cherches à faire, mais comme tu peux passer d'un onglet à l'autre en mode création, peut-être que cela te permettra de faire ce que tu cherches :/


Message édité par PatG le 03-08-2010 à 12:01:23
Reply

Marsh Posté le 04-08-2010 à 14:38:33    

Bonjour mon frère,
 
J'ai essayé dans d'autre forum, peut être ils n’ont pas compris mon problème.
 
Je vous remercie pour votre réponse, donc j'ai utilisé deux  tabsheet :
Le premier est nommé DONNE CREATION SCREEN, et le second: DONNE CANCEL    SCREEN, comme cité en haut.
 
J'ai mis le code suivant dans memo3 qui est dans le tabsheet1 et tabsheet2
Listé ci-dessus, enfaite dans mon application, je voulais séparer la création et la suppression en utilisant un script évidemment .j'ai pensé mettre les deux tabsheet et dedans le tabsheet je mets memo3.
 
Autre chose si tu mets tabindex est égale à 0 quand on est en mode création avant de passer à la compilation, il vous affiche :    
 
 
procedure TForm1.TabControl1Change(Sender: TObject);
 
begin
 
end;
 
end.
 
et quand tu change le tabindex vers 1 il vous donne le même code cité en haut malgré le index des deux tabsheet on été changé, merci de m'éclaircir  ce point, parce que le code de création doit être mis dans tabsheet création qui a l’index0, et le code de suppression  qui le tabindex1.
 
 
Donc au lieu d'utilisé un seul memo qui doit afficher la création et suppression de mon script en cliquant sur un bouton intitulé RUN, j'ai pensé à utilisé deux tabsheet qui à leur tour contienne un memo3 et de ce fait le tabsheet qui à l'index 0 affiche le script de création et l'autre affiche la suppression quand je clique sur le bouton RUN.
 
Merci pour votre support  
 
 
 
Salutation  

Reply

Marsh Posté le 05-08-2010 à 11:52:45    

Pour voir si je comprend bien, je résume :
 
Un écran avec
 - 2 onglets contenant chacun un champ mémo
 - un bouton RUN
 
Le mémo du premier onglet contient le script de création
Le mémo du deuxième onglet contient de script de suppression
 
Le bouton RUN exécute le script du mémo de l'onglet actif ?

Reply

Marsh Posté le 07-08-2010 à 20:13:10    

Bonjour mon frère,
 
Je m'excuse j'ai été malades ces deux dernier jours, Oui tu as compris mon message , je veux quand je clique sur le bouton RUN , il m'affiche le resultat de la création et la suppression dans les deux onglet em meme temps.
 
le script DE CREATION à tItre d'example :
 
memo3.lines.add( 'mmi'+'dep'+'='+'all');
memo3.lines.add( 'BBI'+'dep'+'='+'all');
memo3.lines.add( 'RRI'+'dep'+'='+'all');  
 
le script DE SUPPRSSION à tItre d'example :  
 
memo3.lines.add( 'mmE'+'dep'+'='+'all');
memo3.lines.add( 'BBE'+'dep'+'='+'all');
memo3.lines.add( 'RRE'+'dep'+'='+'all');  
 
nb: comment associer un code aux deux onglet ( les deux tabsshet )pour les deux script cité en haut .
 
Un grand merci pour  votre support .
 
Salutation  
 
 
 
 

Reply

Marsh Posté le 11-08-2010 à 12:00:26    

Je n'arrive pas à comprendre comment tu as pu mettre un objet memo dans chacun de tes onglets de ton TTabControl...
 
pour changer d'onglet dans le TTabControl, il suffit dans le code du bouton d'avoir une instruction comme :  
 
TabControl1.TabIndex := 0;
pour activer le premier onglet, ou :
TabControl1.TabIndex := 1;
pour activer le deuxième onglet.
 
Le mieux serait plutôt d'utiliser un TPageControl à la place du TTabControl. Plus facile à utiliser en mode conception, il suffit d'ajouter les pages, puis d'ajouter le composant memo sur chacune des pages.
 
Le changement d'onglet se fait de la même manière, via la propriété TabIndex. L'affectation du texte aux champs mémo se faisant directement via le nom de l'objet qui est unique. Par exemple le champ mémo du premier onglet s'appelerait memo1 et celui du deuxième onglet memo2. L'affectation du texte serait alors :
 
memo1.lines.add('Le texte que tu veux');
memo2.lines.add('Un autres texte que tu veux');
 
Tu peux aussi détecter l'onglet actif :
if PageControl1.TabIndex = 0 then
...
else
...
et donc afficher ce que tu veux en fonctin de l'onglet actif.
 
 
 
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed