PageControl & TabSheet

BenXbox Messages postés 210 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 14 août 2007 - 24 janv. 2005 à 23:42
 PoulpHunter - 22 févr. 2006 à 23:00
Bonsoir tout le monde,
J'aurais voulue savoir ci il y a une option pour fermer un TabSheet qui est dans un PageControl ?
Merci d'avance.


Mon Site Web : http://Www.BenXbox.Fr.sT

29 réponses

lapucedu88 Messages postés 96 Date d'inscription jeudi 1 avril 2004 Statut Membre Dernière intervention 22 mai 2008 1
25 janv. 2005 à 08:49
Le fermer je sais pas, mais tu peux le rendre invisible.
Voilà un exemple de code qui utilise un popupmenu :

procedure TForm1.Fermer1Click(Sender: TObject);
var
page:integer;
begin
page:=pc.ActivePageIndex; // Tu cherche l'index de l'onglet qui est actif
pc.Pages[page].TabVisible:=false; // tu le rend invisible
end;

pc est le nom que j'ai donné pagecontrol et fermer le nom de l'item de mon popupmenu

La puce
0
BenXbox Messages postés 210 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 14 août 2007
25 janv. 2005 à 10:33
A d'accord, mais enfaîte donc c'est pour rendre un TabSheet invisible quant le logiciel tourne, parce que enfaîte c'est un genre d'explorateur Internet, et il faut que je puisse fermer les TabSheet.
Merci.


Mon Site Web : http://Www.BenXbox.Fr.sT
0
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
25 janv. 2005 à 10:39
euh bah rien de plus simple ben ! je suis meme sur que tu connais =) c'est l'inverse de "create" et donc "destroy" !!!

exemples détruisant la 2eme page :

TabSheet2.Destroy;

ou

PageControl1.Pages[1].Destroy;


bye !
0
BenXbox Messages postés 210 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 14 août 2007
25 janv. 2005 à 10:44
Non mais c'est quant le logiciel et démmarer.


Mon Site Web : http://Www.BenXbox.Fr.sT
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
25 janv. 2005 à 11:29
qui a dit le contraire ? je viens de te donner 2 choix de ligne de code
a mettre pendant l'execution de ton prog ! tu n'as meme pas testé et tu
me dis deja que ce n'est pas ça ?

si tu connais deja la réponse, ne pose pas la question !
0
BenXbox Messages postés 210 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 14 août 2007
25 janv. 2005 à 11:35
Mais le numéro de la TabSheet je ne la connais pas !
Sa dépend de ce que fais le mec quant il navigue avec l'explorateur Internet.
Tu comprends mieux ?


Mon Site Web : http://Www.BenXbox.Fr.sT
0
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
25 janv. 2005 à 11:44
mais bien sur que tu connais le TabSheet en cours !

tu peux recup un integer avec PageControl.TabIndex ou le nom du TabSheet avec PageControl.ActivePage
0
BenXbox Messages postés 210 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 14 août 2007
25 janv. 2005 à 11:54
Je voie pas du tout comment tu veut que je face sa. :(

Mon Site Web : http://Www.BenXbox.Fr.sT
0
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
25 janv. 2005 à 13:15
bon je viens de te faire une demo juste pour toi en 1heure, voila le resultat :

http://diabloporc.free.fr/delphi/demos/ie.zip

voila le screen :

http://diabloporc.free.fr/delphi/demos/ie.jpg

j'espere que ça va t'aider !!
0
BenXbox Messages postés 210 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 14 août 2007
25 janv. 2005 à 13:17
Bas merci, prendre une heure de son temp pour moi c'est trop sympa, merci beaucoup. :)

Mon Site Web : http://Www.BenXbox.Fr.sT
0
BenXbox Messages postés 210 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 14 août 2007
25 janv. 2005 à 15:02
Merci beaucoup, par contre c'est quoi la déclaration de "pc" ?


Mon Site Web : http://Www.BenXbox.Fr.sT
0
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
25 janv. 2005 à 15:13
Regarde au moins dans le haut du .pas !

type

TForm1 = class(TForm)

MainMenu1: TMainMenu;

newonglet: TMenuItem;

closeonglet: TMenuItem;

Panel1: TPanel;

e_url: TEdit;

Label1: TLabel;

bt_ok: TBitBtn;

sb: TStatusBar;

pc: TPageControl;

PopupMenu1: TPopupMenu;

menu1: TMenuItem;

ActionList1: TActionList;

act_closeonglet: TAction;

act_newonglet: TAction;

Nouvelonglet1: TMenuItem;

act_gourl: TAction;

procedure pcContextPopup(Sender: TObject; MousePos: TPoint;

var Handled: Boolean);

procedure act_newongletExecute(Sender: TObject);

procedure act_closeongletExecute(Sender: TObject);

procedure act_gourlExecute(Sender: TObject);

procedure e_urlKeyPress(Sender: TObject; var Key: Char);

private

{ Private declarations }

public

{ Public declarations }

end;
0
BenXbox Messages postés 210 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 14 août 2007
25 janv. 2005 à 18:55
A ok merci, sinon j'ai reussie à mettre ton code en place, mais je me demander pour des buttons comme actuliser - page precendente et page suivante sa peut pas marcher.


Mon Site Web : http://Www.BenXbox.Fr.sT
0
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
25 janv. 2005 à 19:03
bah si ! et meme que c'est le WebBrowser qui gere ça tout seul !

~.Refresh;

~.GoBack;

etc, je te laisse chercher ou je termine ton project en 2h avec gest

yion IE + Mozilla au choix sous le clic droit ?

ps : ya un clic droit ki se fait sur les onglets et que sur les onglets =) pk pas gerer un double clic pour fermer !
0
BenXbox Messages postés 210 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 14 août 2007
25 janv. 2005 à 19:06
Oui mais quant je mais WebBrowser1.GoBack; ou autres sa marche que pour la premiere fennetre.
Sinon j'ai pas compris ce que tu ma dit a la fin.


Mon Site Web : http://Www.BenXbox.Fr.sT
0
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
25 janv. 2005 à 19:09
et mon edit avec l'adresse ? il ne marche que pour le premier ? non !
il marche pour tous ! regarde comment j'ai fait pour gerer ça et fait
idem.

pour les onglets je disais que :

ça pourrait etre une bonne idée de gerer un double clic sur un onglet = fermeture onglet !

je crois que je vais me le finir ce projet ... melanger du IE avec du
Mozilla, comme ça les deux sont gérés, et pis anti-popup etc
0
BenXbox Messages postés 210 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 14 août 2007
25 janv. 2005 à 19:11
A et comment on fais pour faire deux clique pour fermer un onglet ou une petite croix ?

Mon Site Web : http://Www.BenXbox.Fr.sT
0
BenXbox Messages postés 210 Date d'inscription mercredi 5 juin 2002 Statut Membre Dernière intervention 14 août 2007
25 janv. 2005 à 19:15
C'est bon j'ai reussie pour les buttons page precedente, actualiser, et suivante.
Mais pour sa j'ai pas reussie :
procedure TForm1.WebBrowser1CommandStateChange(Sender: TObject; Command: Integer; Enable: WordBool);
begin
if Command = CSC_NAVIGATEBACK then Button2.Enabled := Enable;
if Command = CSC_NAVIGATEFORWARD then Button4.Enabled := Enable;
end;


Mon Site Web : http://Www.BenXbox.Fr.sT
0
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
25 janv. 2005 à 19:16
hahahah toi tu manges de la bouillie nan ? tu veux tu tout maché ! pas
envie de chercher ? d'apprendre ? une petite croix c simple, c'est deja
fait !!! mais moi j'ai mis "Fermer l'onglet en cours", a toi de "poser
un bouton" et mettre "act_closeonglet" dans la propriété "action' de ce
bouton. puis tu mets une belle crois sur le bouton =)

si tu veux une croix au meme endroit que dans firefox, a toi de retoucher le composant TPageControl.

Pour la gestion du double click, detecte comme moi a kelle endroit est
la souris (maxi 20 en Y pour mousepos) puis ds l'event "OnDblClick" tu
fais un "act_closeonglet.execute"
0
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
25 janv. 2005 à 19:18
bah deja :

Bouton2 et Bouton4 ça m'avance a quoi ? ils sont meme pas nommés ! c un minimum ...

et puis "Enabled := Enable;" ... désolé mais tu devrais apprendre le delphi avant de te lancer dans ce projet car le résultat attendu est un Boolean (true ou false)

et au lieu de me dire "ça marche pas" dit moi plutot "quand je fais ça,
j'ai un erreur ici" "quand je clic la "ça ne bouge pas alors que ... "
etc
0