Bonjour,
J'utilise actuellement l'AU3 pour observer le réseau (via PCAP) et incrémenter une base de donnée des différentes IP / protocoles utilisés / etc pour faire un audit de sécurité en local. J'incrémente un champ (label) par le nombre de paquet reçu lors de l'analyse en "real-time". Bonne idée ou pas, cela fonctionne. Mais lors des piques de packets (1900 /sc), bien que le label se mette bien à jour, j'ai l'impression que l'AU3 détruit et recréer l'élément avec le nouveau texte, parce que je vois le background (Bk) devenir "blanc naturel", puis se ré-appliquer en transparent.
C'est bête, mais comme je compte mettre en libre service le code, je pense que ça va gêner l’œil des utilisateurs. Une idée de comment fonctionne GUICtrlSetData() à ce niveau et comment pallier au problème ? La solution simple serait d'incrémenter l'affichage toutes les x secondes en incrémentant la variable en background en temps réel, mais je me demande s'il y a une solution directement prévue en AU3.
Une idée ?
GUICtrlSetData() - Rafraîchissement du Bk.
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
- Barthandelus
- Niveau 4
- Messages : 53
- Enregistré le : mer. 02 janv. 2019 14:34
- Status : Hors ligne
- TommyDDR
- Modérateur
- Messages : 2102
- Enregistré le : mar. 22 juil. 2008 21:55
- Localisation : Nantes
- Status : Hors ligne
Re: GUICtrlSetData() - Rafraîchissement du Bk.
Bonjour,
Je pense voir ce dont vous voulez parler, mais (et c'est valable en règle général si vous voulez que les gens vous aident) vous devriez fournir un code simplifié qui reproduit votre problème.
En effet, si quelqu'un veut vous aider, vous le forcez à créer un script et essayer de trouver ce dont vous voulez parler.
Voilà ce que j'ai fait (et je n'ai pas de problème) :
Je pense voir ce dont vous voulez parler, mais (et c'est valable en règle général si vous voulez que les gens vous aident) vous devriez fournir un code simplifié qui reproduit votre problème.
En effet, si quelqu'un veut vous aider, vous le forcez à créer un script et essayer de trouver ce dont vous voulez parler.
Voilà ce que j'ai fait (et je n'ai pas de problème) :
Code : Tout sélectionner
#include <GUIConstantsEx.au3>
Opt("GUIOnEventMode", 1)
Opt("MustDeclareVars", 1)
Global $gui
Global $taille[2] = [300, 300]
Global $label
Global $count = 0
$gui = GUICreate("", $taille[0], $taille[1])
GUISetOnEvent($GUI_EVENT_CLOSE, "quit", $gui)
GUISetBkColor(0x000000, $gui)
$label = GUICtrlCreateLabel("0", 10, 10, 100, 20)
GUICtrlSetColor($label, 0xFFFFFF)
GUICtrlSetBkColor($label, $GUI_BKCOLOR_TRANSPARENT)
GUISetState(@SW_SHOW, $gui)
While(True)
$count += 1
GUICtrlSetData($label, $count)
Sleep(10)
WEnd
Func quit()
Exit
EndFunc
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679