|
Site |
Cours VB.net |
|
|
|
Icône
de l'application
Barre de taches, Créer un raccourci, Lancer le programme au démarrage, Numéro de version. |
|
|
.
En VB 2005.
Icône de l'application
Pour avoir une icône liée à notre application, nous pouvons le faire au travers de l’onglet « Application » (dans les propriétés du projet) au niveau « Icône ». Remarquez que nous retrouvons les icônes importées dans les ressources projets
Bouton dans la barre de tache:
Comment mettre un bouton correspondant à la form dans la barre de tache?
Mettre la propriété ShowInTaskBar de la form à True.
Il est préférable de le faire pour une seule form de l'application.
Icône dans la barre de processus: NotifyIcon
Comment mettre une petite icône dans la barre de processus? Exemple : Mettre une icône bleu dans la barre de tache avec une info bulle indiquant le nom du programme (Ici: LDF).
Le Framework .Net 2.0 dispose de composants vous permettant d’ajouter très rapidement cette fonctionnalité. Ce sont le NotifyIcon et le ContextMenuStrip.
Dans la fenêtre « ToolBox », glissez un composant « NotifyIcon » sur notre formulaire. Il apparaît un composant NotifyIcon1 sous le formulaire:
Dans la fenêtre de propriétés de NotifyIcon1, donner à sa propriété « Text » la valeur «LDF» ; ceci correspond à l’info bulle qui s’affiche lorsque le pointeur de la souris vient se positionner au dessus de l’icône, dans la barre de processus.
Pour indiquer l'icône à utiliser dans la barre de tache:
Click droit sur le composant NotifyIcon1 en bas du formulaire, puis choisir une icône.(Fichier avec extension .ico)
Par code dans FormLoad par exemple: NotifyIcon1.Icon = MyIcone.ico
Noter que dans la fenêtre de propriétés on ne peut pas changer l'icône.
L’idée à présent est
de créer un menu contextuel sur l’action « click droit » de notre
icône de notification.
Déposez un composant « ContextMenuStrip » sur notre formulaire dans la partie Design. Pour associer les 2 composants, dans les propriétés de « NotifyIcon1 », il suffit d' affecter à la propriété « ContextMenuStrip » le composant « ContextMenuStrip1 ».
Pour définir les menus du « ContextMenuStrip », il suffit de
cliquer sur le composant
« ContextMenuStrip » pour faire apparaître un menu (en mode design
uniquement). Celui qui sera visible dans la barre de tache en cours d'exécution.
Il suffit de remplir le menu comme d'habitude. On ajoute par exemple 'Ouvrir' et 'Fermer'.
En double-cliquant sur le menu, vous générez automatiquement la procédure évènement dans la partie Code.
Exemple de code
pour 'Ouvrir' et 'Fermer'.
Private
Sub OuvrirToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles OuvrirToolStripMenuItem.Click
If
Me.WindowState = FormWindowState.Minimized Then
Me.WindowState
= FormWindowState.Normal
End
If
End
Sub
Private
Sub FermerToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles FermerToolStripMenuItem.Click
Application.Exit()
End Sub
Au niveau du menu « Ouvrir », nous testons si l’application est réduite dans la barre des tâches. Si c’est le cas nous l’affichons normalement. Sur l’évènement « Fermer », nous allons tout simplement quitter l' application.
Créer un raccourci sur le bureau:
'Il faut d'abord ajouter la référence wshom.ocx qui est dans C:\Windows\System32
(menu Projet=>Propriétés de.. Références , bouton Ajouter, Onglet Parcourir, aller dans C:\Windows\System32, cliquer sur wshom.ocx puis Ok)
Exemple: créer un raccourci sur le bureau avec l'icône ''euro.ico', comme texte LDF et qui lance c:\Program Files\LDF\ldf.exe
Dim Bureau As IWshRuntimeLibrary.WshShell
Dim Raccourci As IWshRuntimeLibrary.WshShortcut
Dim Nom As String
Bureau = New IWshRuntimeLibrary.WshShell
' Chemin et nom du raccourci
Nom = My.Computer.FileSystem.SpecialDirectories.Desktop & "\LDF.lnk" 'pour 'LDF'
Raccourci = CType(Bureau.CreateShortcut(Nom), IWshRuntimeLibrary.WshShortcut)
' Cible à exécuter
Raccourci.TargetPath = "c:\Program Files\ldf\ldf.exe"
' Icône à utiliserRaccourci.IconLocation = "C:\WINLDF\Icone\euro.ico"
' Enregistrement du raccourciRaccourci.Save()
Lancer le programme au démarrage de Windows:
Pour cela, il faut dans le registre (Software\Microsoft\Windows\CurrentVersion\Run) ajouter le nom du programme.
Imports Microsoft.Win32 'en haut du module.
Dim obj_RegistryKey As RegistryKey
obj_RegistryKey = Registry.CurrentUser.OpenSubKey("Software\Microsoft\Windows\CurrentVersion\Run", True)
obj_RegistryKey.SetValue("LDF", "C:\Program Files\LDF.exe")
Voir aussi le chapitre sur le registre.
Numéro de version:
Dans les propriétés du programme, sous
l'onglet "Application" un bouton "Informations de l'assembly"
permet d'accéder à 2 numéros de version et de les modifier directement:
- Version de l'assembly
on y accède dans le code par My.Application.Version.Info
- Version de fichier
on y accède dans le code par My.Application.Productversion
(on ajoute .ToString pour afficher.)
Dans l'onglet "Publier" on gère
-la Version de publication+++
Publier= créer dans le répertoire /publish/ les fichiers d'installation.
avec 4 nombres: Principale, Secondaire, build, révision
On modifie à la main les numéros de version principale, secondaire et BuildSi 'Incrémenter automatiquement le numéro de révision' est cochée, la révision est automatiquement incrémentée pour chaque publication: c'est la release qui est incrémentée à chaque fois que l'on 'publie' (menu 'générer' puis 'Publier' , ce qui crée dans le répertoire /publish/ les fichiers d'installation, on voit d'ailleurs dans ce répertoire des noms contenant la version LDF_1_1_0_1 par exemple).
On y accède dans le code par My.Application.Deployment.CurrentVersion mais attention cela fonctionne avec la version exécutable installée (apparemment pas dans l'IDE)
Pour un logiciel, la version 1.00 correspond a la première version stable. On a donc souvent des versions du type 0.8 qui sont encore des bêtas
Le numéro de version ne peut que s'incrémenter de droite a gauche.
Si on modifie complètement
l'interface ou une grosse partie du logiciel ... la version 1.0.0.0 devient
alors v2.0.0.0 (version principale)
Si on ajoute quelques petites fonctionnalisées
a notre version 1.1.0.0 elle devient alors v1.2.0.0 (version secondaire)
Le build est modifié pour différencier les versions alpha et bêta.
alpha = build test, tests fait par le développeur, débouchant ensuite sur le release test.
bêta = release test, tests fait par le public ou par des bêta-testeurs, débouchant alors sur une final release.
La révision est modifiée à chaque publication (chaque nouvelle version) même après une petite modification.
|
|
|
|
|