Effacer une partie de l'écran

cyrcroix Messages postés 21 Date d'inscription vendredi 9 avril 2004 Statut Membre Dernière intervention 5 juillet 2005 - 22 déc. 2004 à 14:23
cyrcroix Messages postés 21 Date d'inscription vendredi 9 avril 2004 Statut Membre Dernière intervention 5 juillet 2005 - 23 déc. 2004 à 09:10
Bonjour à tous,
je voulais savoir comment effacer juste une partie de l'écran pendant l'execution de mon application, j'ai rien trouver d'autre que Cls qui efface tout l'écran...
Merci de votre aide.

8 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
22 déc. 2004 à 14:38
Càd ? Que veux tu faire exactement ?

Tu peux rendre une zone de l'écran invalide en utilisant la fonction de l'API Windows InvalidateRect par exemple, mais je ne sais pas si c'est ce que tu cherche.
_______________________________________

DarK Sidious

[Responsable API/VB du site www.ProgOtoP.com]
Téléchargez ProgOtoP API Viewer
0
addamsmercredi Messages postés 121 Date d'inscription dimanche 3 octobre 2004 Statut Membre Dernière intervention 27 juillet 2006
22 déc. 2004 à 15:07
Il suffit d'ajouter une picture box sur toute la partie de l'écran à effacer. Comme propriété, il faut que la picture box soit de la même couleur que la feuile, sans bordure, au premier plan et invisible. Et lorsque l'on veut cacher la partie de l'écran, il suffit de la rendre visible.
0
addamsmercredi Messages postés 121 Date d'inscription dimanche 3 octobre 2004 Statut Membre Dernière intervention 27 juillet 2006
22 déc. 2004 à 15:25
Et il faut aussi que la picture box soit d'apparence plate (pas en 3D) de manière à ce que lorsqu'elle devienne visible, on la confonde parfaitement avec la feuille.
0
cyrcroix Messages postés 21 Date d'inscription vendredi 9 avril 2004 Statut Membre Dernière intervention 5 juillet 2005
22 déc. 2004 à 18:44
En fait je veux juste afficher un compteur ( que j'ai crée avec un timer) dans ma fenetre. Et du coup il faut que j'efface celui-ci a chaque fois sinon les chiffres se superposent. Je le faisais avec "cls" mais du coup toute ma fenetre est reactualisée -> ca rame!!!
Merci de m'aider c sympa...
0

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

Posez votre question
addamsmercredi Messages postés 121 Date d'inscription dimanche 3 octobre 2004 Statut Membre Dernière intervention 27 juillet 2006
22 déc. 2004 à 19:10
Mais avec quoi tu écris les chiffres ?
Ecris les dans un lablel ou un textbox, il n'y aura pas de problème de superposition.
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
22 déc. 2004 à 19:14
C'est bien ce que je pensais, donc utilise la fonction de l'API Windows InvalidateRect pour ne raffraichir que le rectangle entourant ta zone d'affichage.
_______________________________________

DarK Sidious

[Responsable API/VB du site www.ProgOtoP.com]
Téléchargez ProgOtoP API Viewer
0
addamsmercredi Messages postés 121 Date d'inscription dimanche 3 octobre 2004 Statut Membre Dernière intervention 27 juillet 2006
22 déc. 2004 à 19:45
C'est pourtant si simple d'afficher un compteur, voici un tout petit exemple en plaçant sur la feuille un label et un timer.

Si on met le label de la même couleur que la feuille, on ne voit même pas son existence et pour le texte du label, on peut choisir la police que l'on veut avec la couleur voulue.

Et pour la rapidité du compteur, il faut changer la valeur interval du timer.

Dim compteur As Integer

Private Sub Form_Load()
compteur = 0
Label1.Caption = compteur
End Sub

Private Sub Timer1_Timer()
compteur = compteur + 1
Label1.Caption = compteur
End Sub

Et il n'y a aucun problème de superposition ou autre.

Bref en utilisant un label, ça me semble beaucoup plus simple que d'utiliser une API pour réactuliser une partie de la feuille et ça ne rame pas.
0
cyrcroix Messages postés 21 Date d'inscription vendredi 9 avril 2004 Statut Membre Dernière intervention 5 juillet 2005
23 déc. 2004 à 09:10
Merci a vous deux, pour mes compteur g utiliser ce que tu m'as dis addamsmercredi ca marche nikel, et c'est vrai que c'est vraiment simple. Pour la fonction l'API Windows InvalidateRect elle marche nikel aussi, je vais m'en servir dans mon prog. Vous m'avez beaucoup aider. (C'est vrai que je ne suis pas très doué en visual basic, mais j'apprend seul...)
0
Rejoignez-nous