Bonjour,
Voici un code (Multiple input boxes) qui a besoin de modification pour ajouter GUICtrlCreateInput à la demande/au besoin afin de ne pas encombrer une page Gui.
- Ajouter une nouvelle GUICtrlCreateInput se fera par bouton "Ajouter Input" avec $Input[50]. Ce script à pour objet par exemple d'ajouter un nouveau article, rubrique, etc.
Merci pour votre aide.
Cordialement.
Bonjour,
J'ai réalisé le code joint (comme exemple indicatif), mais mon problème c'est avec la fonction: GUICtrlSetData($hInput1, ""), elle supprime le contenu texte dans input uniquement la première fois. Je ne serais vous expliquez la problématique, c'est pour cela je vous prie de faire vous même le test. Je compte sur votre aide. Merci...
Cordialement.
Je n'ai pas trop compris pourquoi à chaque appui sur le bouton, on ajoute un input ET on supprime ce qu'il y avait dans les autres champs.
Je tente quand même :
Bonjour Monsieur TommyDDR,
C'est exactement le résultat que cherche. Merci...
Si c'est possible et afin de ne pas créer plusieurs GUICtrlCreateInput dans la même fenêtre l'une après l'autre, on garde juste une seule GUICtrlCreateInput l'autre (app0) est remplacée par cette dernière = app1 puis app2, etc
Cordialement.
Modifié en dernier par Boulanza le jeu. 17 déc. 2020 16:53, modifié 1 fois.
Bonjour
J'ai un peu l'impression que le but est de créer un champ via le bouton et gérer sa suppression si il est vide. Mais ça, c'est ma compréhension
Ce n'est pas un réel problème.
Dans ce que j'ai proposé, la clé n'a aucune importance, seule la valeur et sa position compte. Mais je conçois que ce n'était pas ce à quoi vous vous attendiez. C'est une approche différente.
Du moment que vous trouverez votre bonheur dans l'ensemble des propositions, c'est l'essentiel
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.
Non sylvanie, votre travail est excellant, il réponds exactement à mes besoins.
Le Messages : 629 c'est juste pour améliorer au mieux afin ne pas encombrer la fenêtre par 50 gui.
Cordialement
walkson a écrit : ↑jeu. 17 déc. 2020 18:21
Bonjour,
Rhôôô GUICtrlDelete ( controlID )
J'espère que pour le 700 ième message, vous offrez le champagne à ceux qui vous ont répondu
Je vous assure à vous tous de vous offrir le champagne, le couscous, les divers type de tagines Marocain bio à 100%, le thé à la menthe avec les gâteaux Marocain et . Je serais très heureux de vous accourir dans mon pays le Maroc. Merci à vous tous pour votre collaboration. Je ne sais pas si vous avez remarqué que mes questions sont des compléments de savoir faire utiles pour tous les utilisateurs de AutoIt. J'ai toujours partagé les codes objet de mes demande.
Cordialement.
Modifié en dernier par Boulanza le ven. 18 déc. 2020 11:06, modifié 2 fois.
Bonsoir Monsieur TommyDDR,
C'est parfait c'est excellent, un travail propre et simple. Encore une fois merci TommyDDR et je vous souhaite beaucoup de bonheur pour les années à venir.
Cordialement.
Modifié en dernier par Boulanza le jeu. 17 déc. 2020 19:37, modifié 1 fois.
TommyDDR: Vous ne voulez qu'un seul input ?
Pourquoi avoir mis le GUICtrlCreateInput dans la fonction de validation du bouton ?
Et pourquoi supprimer un input pour le recréer, quand vous pouvez simplement le vider ?
Rep: C'est ce que je demande ni rien ni plus: Tout est bien expliqué dans le titre et dans ma demande. Mon problème est que j'ai eu un souci pour vider l'input.
Bonjour tout le monde,
Grace aux solutions ci-dessus de Messieurs de Sylvanie et de TommyDDR , j'ai en fin sortie le script adapté à mes besoins.
Cordialement.
#include-once #include<GUIConstantsEx.au3> #include<StaticConstants.au3> #include<ButtonConstants.au3> #include<EditConstants.au3> ;========================================================================================= Global$i,$hGUI,$InputFiliere01,$InputAbregeFiliere01,$Filiere01,$button,$Filiere01 Global$count,$Filiere011,$Filiere012,$widthCell,$AbregeFiliere01,$NumberLine Global$C1,$_C1,$C2,$_C2,$Quitter ;======================================================================================== Func Application_01() $_C1=GUICtrlRead($InputFiliere01) $C1=StringUpper($_C1); Fonction pour mettre automatiquement input minuscules en majuscules . $_C2=GUICtrlRead($InputAbregeFiliere01) $C2=StringUpper($_C2); Fonction pour mettre automatiquement input minuscules en majuscules . EndFunc ;======================================================================================== Formulaire() Func Formulaire() $hGUI=GUICreate("Formulaire01",540,426,292,252) GUICtrlSetFont(-1,11,900,0,"MS Sans Serif") ;=============================================================== $InputFiliere01=GUICtrlCreateInput("",30,220,350,20) GUICtrlSetLimit(-1,0); to limit the entry to 3 chars 0 à l'infini $Filiere011=GUICtrlSetTip(-1," Veuillez saisir la filière qui correspond à vos domaines d'intervention.Par exemple : « DUT en Génie Thermique et Energétique (GTE) »") $widthCell=150; first cell 70 width ;======================================= Suite Local$label1=GUICtrlCreateLabel("Veuillez saisir la filière qui correspond à vos domaines d'intervention.",50,150,300,40,$SS_CENTER) GUICtrlSetFont(-1,12,100,0,"Arial") Ajouterlabel01(); Emplacement 1 ;==================================================================== $InputAbregeFiliere01=GUICtrlCreateInput("",400,220,100,20) $Filiere012=GUICtrlSetTip(-1," Veuillez saisir l'abrégé de la filière qui correspond à vos domaines d'intervention.Par exemple : « GTE »") $widthCell=150; first cell 70 width ;=============================================================== $button=GUICtrlCreateButton("Ajouter filière",210,275,120,30) GUICtrlSetOnEvent($button, AjouterInputFiliere01) GUICtrlSetFont(-1,10,400,0,"Arial") ;=============================================================== $Quitter=GUICtrlCreateButton("Quiter",210,320,120,30) GUICtrlSetFont(-1,10,400,0,"Arial") ;=============================================================== GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### ;============================== GUISetState() While1 SwitchGUIGetMsg() Case$GUI_EVENT_CLOSE Exit Case$button InfoChampsInputsFiliere() ;AjouterInputFiliere01() ContinueLoop;==> Indispensable à cette place pour revenir à 0 lors de champ vide de GUI. Case$Quitter Exit EndSwitch WEnd EndFunc ;=============================================================== Func AjouterInputFiliere01() LocalStatic$count=0 $count+=1 ;======================================== Suite Local$read=GUICtrlRead($InputFiliere01) GUICtrlSetData($InputFiliere01,"") IniWrite(@ScriptDir&"\Config.ini","Parametres","$Filiere"&$count,$read) ;======================================== Suite Local$read=GUICtrlRead($InputAbregeFiliere01) GUICtrlSetData($InputAbregeFiliere01,"") IniWrite(@ScriptDir&"\Config.ini","Parametres","$AbregeFiliere"&$count,$read) ;============================================================== Ajouterlabel01(); Emplacement 2 EndFunc ;=============================================================== Func Ajouterlabel01() LocalStatic$count=0 Local$read=GUICtrlRead($Filiere01) GUICtrlSetData($Filiere01,"") $count+=1 $Filiere01=GUICtrlCreateLabel("Veuillez saisir l'intitulé de la filière N°"&$count&" :",30,200,220,20) $AbregeFiliere01=GUICtrlCreateLabel("Saisissez l'abrégé de ladite filière N°"&$count&" :",400,190,100,40,$SS_CENTER) EndFunc ;=============================================================== Func InfoChampsInputsFiliere() Application_01() ;~ ;*** Info champs inputs If$C1=""Then Msgbox($MB_SYSTEMMODAL,"Attention","Vous n'avez pas saisie l'intitulé qui correspond à la matière que vous enseignez!",5) ElseIf$C2=""Then Msgbox($MB_SYSTEMMODAL,"Attention","Vous n'avez pas saisie l'abréviation de l'intitulé qui correspond à la matière que vous enseignez!",5)