PageControl & TabSheet

Messages postés
210
Date d'inscription
mercredi 5 juin 2002
Statut
Membre
Dernière intervention
14 août 2007
-
Messages postés
51
Date d'inscription
mercredi 11 mai 2005
Statut
Membre
Dernière intervention
8 avril 2009
-
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

Messages postés
2226
Date d'inscription
dimanche 5 octobre 2003
Statut
Modérateur
Dernière intervention
18 novembre 2010
14
pour la petite crois, je suis sur qu'il y a moyen de faire (apres avoir posé ton ptit bouton avec ta croix) :

BoutonClose.Parent := pc; // mon PageControl s'apelle "pc"

puis

BoutonClose.left := xx; // x est un entier, il faut placer la croix au bon endroit au moins une fois

puis ne pas oublier de mettre Anchors sur [right,top]

voila
Messages postés
210
Date d'inscription
mercredi 5 juin 2002
Statut
Membre
Dernière intervention
14 août 2007

Non il est bon mon code c'est seulement que j'arive pas a l'adapter pour plusieurs WebBrowser.

L'évènement CommandStateChange est appelé chaque fois qu'une "commande" change d'état. Par exemple, cet évènement sera déclenché lorsque l'on passe d'un état "il n'existe pas de page précédente" à un état "il existe une page précédente".


Le paramètre Command indique la "commande" concernée; le paramètre Enable son état.



<LI>
Mettez la propriété Enabled de vos boutons Suivant et Précédent à False


<LI>
Implémentez l'évènement CommandStateChange :

</LI>


procedure TForm1.WebBrowser1CommandStateChange(Sender: TObject;
Command: Integer; Enable: WordBool);
begin
// active ou désactive les boutons de changement
// de page en fonction de l'historique
if CommandCSC_NAVIGATEFORWARD then ButtonSuivant.Enabled:Enable;
if CommandCSC_NAVIGATEBACK then ButtonPrecedent.Enabled: Enable;
end;

Et sinon pour l'event "OnDblClick" il est pas dans le PageControl1.


Mon Site Web : http://Www.BenXbox.Fr.sT
Messages postés
2226
Date d'inscription
dimanche 5 octobre 2003
Statut
Modérateur
Dernière intervention
18 novembre 2010
14
ha mince ya pas de DblClick :/ bon faudra trouver une astuce alors



euh pour ton code qui est super, il marche sur un WebBrowser1 = ) mais
nous, on a pas de WebBrowser1 ! on les crée a la volé ! donc tu doit
déclarer cette procedure :

procedure
TForm1.WebBCommandStateChange(Sender: TObject; Command: Integer; Enable: WordBool);

begin

i f Command =CSC_NAVIGATEFORWARD then ButtonSuivant.Enabled:= Enable;

if Command =CSC_NAVIGATEBACK then ButtonPrecedent.Enabled:= Enable;

end;



puis lors de la création des webbrowser (fWebBrowser) ajoute dans le with ... do :

OnCommandStateChange :=
WebBCommandStateChange;



chaque webbrowser fera changer le status des boutons... inconvénient :

- je suis sur le 1er webbrowser (WB), je navigue en avant, le bouton "back" s'active

- je passe sur le 2eme WB, je peux cliquer sur le bouton "back" alors que je n'ai pas encore navigué !!



moi je créerais 2 array de boolean (array of boolean) ou pourquoi pas
des Record (enregistrements) qui contiendraient les "enabled" de "back"
et "next", puis a chaque "OnChange" de mon PageControl, je check dans
mes array (ou record) pour mettre les enabled corrects selon le WB
navigué.

pas tout compris ?
Messages postés
210
Date d'inscription
mercredi 5 juin 2002
Statut
Membre
Dernière intervention
14 août 2007

lol mdrrr, comment te dire heu ha oui je me rapel, je suis débutant mdrrrrrrrrrrr

Mon Site Web : http://Www.BenXbox.Fr.sT
Messages postés
210
Date d'inscription
mercredi 5 juin 2002
Statut
Membre
Dernière intervention
14 août 2007

Les logiciels sont tous de moi sauf la source DvdCover qui est pas de moi mais il y a pas plagiat puisque c'est une source gratuite et que sur mon site le logiciel et gratuit sauf l'accès à la page des téléchargement des logiciels.
Sinon oui je m'y connais mais la je suis largué quant tu me dit :
moi je créerais 2 array de boolean (array of boolean) ou pourquoi pas des Record (enregistrements) qui contiendraient les "enabled" de "back" et "next", puis a chaque "OnChange" de mon PageControl, je check dans mes array (ou record) pour mettre les enabled corrects selon le WB navigué.
pas tout compris ?


Mon Site Web : http://Www.BenXbox.Fr.sT
Messages postés
2226
Date d'inscription
dimanche 5 octobre 2003
Statut
Modérateur
Dernière intervention
18 novembre 2010
14
Que tu le donnes
gratuit ou pas, si ce n'est pâs de toi, alors le nom de l'auteur
véritale doit apparaitre et non le tiens. S'approprier ou se faire
passer pour l'auteur, c'est ça le plagiat.



Pour les array, as tu compris le probleme des boutons "back" et "next" ?



voici un exemple qui peut expliker (juste pour exemple , le code ne fonctionne surement pas) :



var ar_BoutonBack : Array of Boolean;

...

SetLength(ar_BoutonBack,pc.pagescount); // a faire a chaque ajout/suppression d'onglet



puis selon le browser cette ligne est modifiée comme ceci :

if CommandCSC_NAVIGATEFORWARD then ar_BoutonBack[pc.tabindex]:true;



et quand on reviens sur ce WB, ds le code OnChange du PC on mets :

BoutonBack.Enabled := ar_BoutonBack[pc.tabindex];



Voila qqchose comme ça. Il est possible que je regarde ça de plus pret ce soir ou demain matin.
Messages postés
210
Date d'inscription
mercredi 5 juin 2002
Statut
Membre
Dernière intervention
14 août 2007

Bas écoute je vais essayer de mon coté et si j'arrive de mon coter je laisse un message avec la source.


Mon Site Web : http://Www.BenXbox.Fr.sT
Messages postés
210
Date d'inscription
mercredi 5 juin 2002
Statut
Membre
Dernière intervention
14 août 2007

Donc j'ai pas trouver comment faire, si tu as trouver fais le moi savoir.


Mon Site Web : http://Www.BenXbox.Fr.sT
Messages postés
51
Date d'inscription
mercredi 11 mai 2005
Statut
Membre
Dernière intervention
8 avril 2009

Ben perso la source IE ma aidé, just cé pr dire merci et que sa sert pas qu'à une seule personne...
++