Question
Interface graphique en PowserShell
- Philippe
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 1778
- Remerciements reçus 21
il y a 10 ans 5 mois #21163
par Philippe
Réponse de Philippe sur le sujet Re:Interface graphique en PowserShell
merci beaucoup
maintenant que je vois bien
je peut te dire que ton script fais ce que tu lui demande !! comme tous les scripts d'ailleurs 
ici :
[code:1]$form1.ShowDialog()
$form2.ShowDialog()
$form3.ShowDialog()[/code:1]
tu ouvre/affiche la première fenêtre($form1.ShowDialog()) et dans ta fenêtre tu ouvre la seconde en faisant suivant et tu la quitte par le bouton quitte.
puis tu ouvre/affiche la deuxième fenêtre($form2.ShowDialog()) et tu la quitte
puis tu ouvre/affiche la troisième fenêtre($form2.ShowDialog()) et tu la quitte
tu verra bien le phénomène en remplacent la fin de ton code comme ceci :
[code:1]$form1.ShowDialog()
sleep 2
$form2.ShowDialog()
sleep 2
$form3.ShowDialog()
[/code:1]
et tu comprendra qu'il te faut enlevé la deuxième ligne !
maintenant que je vois bien
ici :
[code:1]$form1.ShowDialog()
$form2.ShowDialog()
$form3.ShowDialog()[/code:1]
tu ouvre/affiche la première fenêtre($form1.ShowDialog()) et dans ta fenêtre tu ouvre la seconde en faisant suivant et tu la quitte par le bouton quitte.
puis tu ouvre/affiche la deuxième fenêtre($form2.ShowDialog()) et tu la quitte
puis tu ouvre/affiche la troisième fenêtre($form2.ShowDialog()) et tu la quitte
tu verra bien le phénomène en remplacent la fin de ton code comme ceci :
[code:1]$form1.ShowDialog()
sleep 2
$form2.ShowDialog()
sleep 2
$form3.ShowDialog()
[/code:1]
et tu comprendra qu'il te faut enlevé la deuxième ligne !
Connexion ou Créer un compte pour participer à la conversation.
- Laurent
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 71
- Remerciements reçus 0
il y a 10 ans 5 mois #21165
par Laurent
Réponse de Laurent sur le sujet Re:Interface graphique en PowserShell
Un grand merci pour ton aide, et oui dans l'informatique à 80 % des cas l’utilisateur et en cause et non pas la machine elle exécute ce qu'on lui dit.
Bon reste à trouver comment changer une adresse ip à l'aide de text box et j'aurai presque fini
Bon reste à trouver comment changer une adresse ip à l'aide de text box et j'aurai presque fini
Connexion ou Créer un compte pour participer à la conversation.
- xyz
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 69
il y a 10 ans 5 mois #21167
par xyz
Tutoriels PowerShell
Réponse de xyz sur le sujet Re:Interface graphique en PowserShell
Salut,
dans :
[code:1]
#Event Handler ou gestionnaire d'événement
$bouton_suivant.Add_Click(
{
$form1.Close()
$form1.Dispose();
$form2.ShowDialog()
})
$form1.Controls.add($bouton_suivant)
#...
$form1.ShowDialog()
[/code:1]
je te conseille de disposer la fenêtre une fois l'event handler 'terminé' (le close effectué) :
[code:1]
$bouton_suivant.Add_Click(
{
$form1.Close()
$form2.ShowDialog()
})
$form1.Controls.add($bouton_suivant)
#...
$form1.ShowDialog()
$form1.Dispose();
[/code:1]
Mieux :
[code:1]
$bouton_suivant.Add_Click(
{
$form1.Close()
})
$form1.Controls.add($bouton_suivant)
#...
$form1.ShowDialog()
$form1.Dispose();
$form2.ShowDialog()
[/code:1]
L'appel à ShowDialog() passe la fenêtre en mode modal et attend un event, ici Close().
Cela fonctionne tel quel, mais en cas d'évolution on ne peut savoir, il vaut donc mieux faire dans le bon ordre.
Et en fin de script, je préfère restaurer la fenêtre dans un bloc try-catch, ainsi en cas d'erreur bloquante ou de configuration particulière de $ErrorPreference, tu vois ce qui ce passe.
Ceinture/bretelle/parachute.
Tu vois en mode séquentiel le code ne casse pas trois pattes à un canard
laurenzo34000 écrit:
Ainsi tu découpes ton code et permet sa réutilisation.<br><br>Message édité par: Laurent Dardenne, à: 4/12/15 14:58
dans :
[code:1]
#Event Handler ou gestionnaire d'événement
$bouton_suivant.Add_Click(
{
$form1.Close()
$form1.Dispose();
$form2.ShowDialog()
})
$form1.Controls.add($bouton_suivant)
#...
$form1.ShowDialog()
[/code:1]
je te conseille de disposer la fenêtre une fois l'event handler 'terminé' (le close effectué) :
[code:1]
$bouton_suivant.Add_Click(
{
$form1.Close()
$form2.ShowDialog()
})
$form1.Controls.add($bouton_suivant)
#...
$form1.ShowDialog()
$form1.Dispose();
[/code:1]
Mieux :
[code:1]
$bouton_suivant.Add_Click(
{
$form1.Close()
})
$form1.Controls.add($bouton_suivant)
#...
$form1.ShowDialog()
$form1.Dispose();
$form2.ShowDialog()
[/code:1]
L'appel à ShowDialog() passe la fenêtre en mode modal et attend un event, ici Close().
Cela fonctionne tel quel, mais en cas d'évolution on ne peut savoir, il vaut donc mieux faire dans le bon ordre.
Et en fin de script, je préfère restaurer la fenêtre dans un bloc try-catch, ainsi en cas d'erreur bloquante ou de configuration particulière de $ErrorPreference, tu vois ce qui ce passe.
Ceinture/bretelle/parachute.
Tu vois en mode séquentiel le code ne casse pas trois pattes à un canard
laurenzo34000 écrit:
Je te conseille de créer une fonction autonome puis de l’appeler dans l'event handler du textbox ou autre.Bon reste à trouver comment changer une adresse ip à l'aide de text box et j'aurai presque fini
Ainsi tu découpes ton code et permet sa réutilisation.<br><br>Message édité par: Laurent Dardenne, à: 4/12/15 14:58
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Laurent
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 71
- Remerciements reçus 0
il y a 10 ans 5 mois #21185
par Laurent
Réponse de Laurent sur le sujet Re:Interface graphique en PowserShell
Bonjour Laurent,
Merci pour tout tes conseils et ton aide je test actuellement, les WPF et j'essaye de faire la même chose pour choisir par la suite la solution qui me conviendra le mieux : WPF ou WINFORM
Et pour le moment c'est très différent WPF = XAML pour l'interface + commande POWERSHELL (visual studio ça aide énormément)
WINFORM = Powershell pas trouvé (IDE pour la partie interface, primal form est maintenant payant)
Bonne journée à tous.
Merci pour tout tes conseils et ton aide je test actuellement, les WPF et j'essaye de faire la même chose pour choisir par la suite la solution qui me conviendra le mieux : WPF ou WINFORM
Et pour le moment c'est très différent WPF = XAML pour l'interface + commande POWERSHELL (visual studio ça aide énormément)
WINFORM = Powershell pas trouvé (IDE pour la partie interface, primal form est maintenant payant)
Bonne journée à tous.
Connexion ou Créer un compte pour participer à la conversation.
- xyz
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 69
il y a 10 ans 5 mois #21187
par xyz
Tutoriels PowerShell
Réponse de xyz sur le sujet Re:Interface graphique en PowserShell
laurenzo34000 écrit:
Avec le XAML effectivement tu simplifie, car il n'est pas nécessaire de convertir le code C# puisque c'est du XML
Ce n'est pas un IDE mais tu peux coupler ce module avec un projet Winform Visual Studio.WINFORM = Powershell pas trouvé (IDE pour la partie interface, primal form est maintenant payant)
Avec le XAML effectivement tu simplifie, car il n'est pas nécessaire de convertir le code C# puisque c'est du XML
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.045 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Interface graphique en PowserShell