Bonjour à tous
J'ai des composants sur une Form qui ne rafraîchissent pas. Certains n'ont pas de méthode .refresh ou .update . Notamment des Hint.
Existe-t-il une commande permettant à tous les composants d'exécuter un .refresh ?
Merci.
Bonjour à tous
J'ai des composants sur une Form qui ne rafraîchissent pas. Certains n'ont pas de méthode .refresh ou .update . Notamment des Hint.
Existe-t-il une commande permettant à tous les composants d'exécuter un .refresh ?
Merci.
Bonjour,Des composants visuels mais lesquels ?
Le "hint" est un comportement d'un composant visuel pas un composant en soi, si ce n'est que son affichage se fait via un contrôle fenêtré (encapsulé)...
En demandant au contrôle fenêtré parent de se rafraichir (car c'est lui qui est responsable du dessin des composants visuels qui lui sont affiliés), à ne pas confondre avec le propriétaire (Owner) responsable lui de la libération des rattachés...
Philippe.
Bonjour (et bonne année )
Le composant est un JvBallonHint. Ce queje ne comprends pas, c'est qu'il fonctionne aléatoirement.
Ici, ça marche:
Là, ça ne marche pas : le ballon reste totalement vide (son icône comprise) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Procedure Aff_Hint_Documents; begin Ctrl_Pointe := Form1.Lab_Aff_Dsq_Sauvegarde; Form1.JvBalloonHint1.DefaultBalloonPosition := bpRightDown; Form1.JvBalloonHint1.ActivateHint(Ctrl_Pointe, 'Copie en cours', 'SAUVEGARDE DES DOCUMENTS : VEUILLEZ PATIENTER', 100000); end;
C'est ça qui est bizarre... Aucun moyen de forcer l'affichage ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Procedure Aff_Hint_Telechargements; begin Ctrl_Pointe := Form1.Btn_Telechargements; // Ctr_Pointe : type TControl Form1.JvBalloonHint1.DefaultBalloonPosition := bpRightDown; Form1.JvBalloonHint1.ActivateHint(Ctrl_Pointe, 'Copie en cours', 'SAUVEGARDE DES TELECHARGEMENTS : VEUILLEZ PATIENTER', 100000); end;
Donc, avoir introduit un TTimer pour rafraîchir la form (durant la copie) n'a pas d'effet sur un Hint ?
Il rafraîchit pourtant la form elle-même lors d'un appel à ShFileOPeration. C'est déjà ça.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 procedure TForm1.Timer_RaffraichirTimer(Sender: TObject); begin Form1.Update; end;
Il est prévu un affichage de 100 secondes ; la procédure Aff_Hint_Telechargements est-elle bien lancée après fin de l'affichage du Hint provoqué par l'appel à Aff_Hint_Documents ? Sinon, essayer un CancelHint avant, pour voir...
Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
. Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !
Je passe bien, en mode trace, dans la procédure d'affichage. Je vais vérifier avec le ConcelHint avant d'appeler.
Qd ça ne larche pas, voici l'affichage :
L'ajout du TTimer a réglé le problème de rafraîchissement de la Form.
Alors, avec ce code :
j'ai encore ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Procedure Aff_Hint_Bureau; begin Form1.JvBalloonHint1.CancelHint; Ctrl_Pointe := Form1.Lab_Aff_Dsq_Sauvegarde; Form1.JvBalloonHint1.DefaultBalloonPosition := bpLeftDown; Form1.JvBalloonHint1.ActivateHint(Ctrl_Pointe, 'Copie en cours', 'SAUVEGARDE DU BUREAU : VEUILLEZ PATIENTER', 100000); end;
Mais sur une autre procédure, ça a l'air de marcher... C'est bizarre.
C'est résolu !
Il suffisait de mettre
Techniquement parlant, j'aimerais comprendre pourquoi... Mais c'est résolu.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Form1.JvBalloonHint1.CancelHint; Ctrl_Pointe := Form1.Btn_F_Config; Form1.JvBalloonHint1.DefaultBalloonPosition := bpRightDown; Form1.JvBalloonHint1.ActivateHint(Ctrl_Pointe, 'Copie en cours', 'SAUVEGARDE DES FICHIERS DE CONFIGURATION', 100000); Application.ProcessMessages;
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager