Bouton qui cache une form et en ouvre une autre.

Bouton qui cache une form et en ouvre une autre. - VB/VBA/VBS - Programmation

Marsh Posté le 25-11-2004 à 10:34:28    

Bonjour tous le monde :)
 
J' en suis deja à ma 3 ème ouverture de VB.NET (c est dire si je maitrise  :sol: )
 
Voila je vous soumet mon problemes :)
 
Je suis en train de faire un CD d'installation de Windows XP.
Ce CD contient plusieurs type d'installation d'XP ainsi que quelques applications.
Pour faire quelque chose de propres j'ai donc decider de faire ma propre interface (autorun) en VB.NET (pour avoir une premiere experience avec l'outil).
 
Cette interface contiendra plusieurs "pages" (Form si j ai bien compris).
 
J'ai quelques question pour aboutir à mon projet.
Ces questions semblerons basique à ceux qui ont un minimum d'experience avec cet outil :)
 
je me lance.
 
J'ai nommé une form Accueil, cette form est la "page" d'accueil de mon programme.
 
dans cette form j'ai plusieurs boutons.
 
-un pour aller sur la page d'installation d'XP
-un pour lancer un executable
 
Comment faire pour que lorsque je clicke sur mon bouton ma page d'accueil se cache et ma page Install_XP s'affiche.
 
J'ai commence à faire ainsi:
 

Code :
  1. Private Sub BTN_ACC_1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTN_ACC_1.Click
  2.         Accueil.ActiveForm.Hide()
  3.         Install_XP.ActiveForm.Show()
  4.     End Sub


Mais j'ai droit a un message d'erreur de ce type:

Code :
  1. Une exception non gérée du type 'System.NullReferenceException' s'est produite dans WindowsApplication1.exe
  2. Informations supplémentaires : La référence d'objet n'est pas définie à une instance d'un objet.


 
Est il possible d'importer des Boutons et si oui comment les creer :)
(le bouton que j ai à l'esprit est un bouton qui changerais de teintes donc d'image suivant la position de la souris sur celui-ci)
 
 
Merci d'avoir lu jusqu au bout :)


Message édité par boomboommusic le 25-11-2004 à 10:39:52

---------------
-=Liens utiles sur Software & Réseaux= -=Installation automatisée de Windows 2000-XP-2003=- =Modérateur sur www.altirigos.com =-
Reply

Marsh Posté le 25-11-2004 à 10:34:28   

Reply

Marsh Posté le 25-11-2004 à 16:33:31    

je ne connais pas vb.net. Si c'est comme vb6, lance ton programme depuis l'interface de vb et regarde quelle partie du code est surlignée lorsque l'erreur survient.


---------------
stats boinc : http://jmb.boinc.fr/
Reply

Marsh Posté le 25-11-2004 à 18:49:51    

jmbocquet a écrit :

je ne connais pas vb.net. Si c'est comme vb6, lance ton programme depuis l'interface de vb et regarde quelle partie du code est surlignée lorsque l'erreur survient.


 
Salut merci pour ton intervention..j ai reussi a faire un hide et un show faut passer par une "variable" avant mais ca fonctionne :)
Maintenant me reste plus qu a voir si je peux creer des boutons qui change de bmp suivant la position du focus, si t as une idee meme en VB6 afin que je recherche la correspondance VB.NET...

Reply

Marsh Posté le 25-11-2004 à 19:13:04    

utilise l 'evenement MouseMove de ton bouton et change la propriete "picture" dans cet evenement

Reply

Marsh Posté le 25-11-2004 à 19:17:52    

gargamail a écrit :

utilise l 'evenement MouseMove de ton bouton et change la propriete "picture" dans cet evenement


 
Merci des que .NEt est installé sur ma machine je regarde...mais pfiouuu que c est long :)

Reply

Marsh Posté le 25-11-2004 à 22:04:35    

oui hein ? :D n'hesite pas a trainer sur des sites comme www.vbfrance.com qui regorge de sources de tous niveaux, ca aide beaucoup a comprendre les mysteres de VB

Reply

Marsh Posté le 26-11-2004 à 17:03:02    

je vous remercie vraiment pour les coups de pouces :)
 
Pour l'instant j ai un peu mis de cote les boutons je verrais ca un peu plus tard...
je m'attarde sur l'aspect graphique histoire de terminer les differentes form :)
Je reviendrais :d


Message édité par boomboommusic le 26-11-2004 à 17:03:14
Reply

Marsh Posté le 27-11-2004 à 17:23:45    

Resalut...c est encore moi :)
 
Je m'apercois d un petit soucis lorsque j'ouvre une form en passant de l'une a l autre par un click de souris...
En fait, ma form (precedente) ne de ferme jamais et donc au bout a chaque click une nouvelle form s ouvre sans jamais en fermer, et evidemment au bout d un moment ca prends bcp de memoire...
voila comment je procede pour ouvrir une form (code que j'ai recuperé sur le net):

Code :
  1. Dim frm As Install_XP
  2.         frm = New Install_XP
  3.         frm.ShowDialog()
  4.         frm.Close()


 
Ce code est censé m'ouvrir la form Install_XP mais n est elle pas censé fermer celle sur lequel je viens de clicker?
Comment remedier a ce probleme...je ne souhate qu'une seule form ouverte a la fois :)
 
Merci à vous :)
 
PS: Si plus de "code" est necessaire faites le moi savoir :)


Message édité par boomboommusic le 27-11-2004 à 17:24:13
Reply

Marsh Posté le 27-11-2004 à 17:37:27    

en VB6 j'utilise pas cette facon de faire, car evidement a chaque appel de New Form, ca te genere une nouvelle form.
 
A la base avant de créer le code je definit graphiquement toutes mes form avec les boutons, listbox, labels, et autres composants necessaires.
 
supposont que j'ai besoin de 3 forms, je les "dessine" puis je fait appel a la form dont j'ai besoin par un Form1.Show pour afficher la Form1 ou bien un Form1.Hide pour la cacher.
 
Pour la supprimer de la mémoire, je fait appel a Unload.Me : Unload pour decharger la form de la mémoire, Me pour signifier que c'est la Form dans laquelle se trouve le code Unload.Me qui est à decharger

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed