jaknight007
Messages postés17Date d'inscriptionmardi 8 mars 2005StatutMembreDernière intervention16 août 2014
-
12 août 2009 à 18:33
Londonic
Messages postés298Date d'inscriptionjeudi 22 janvier 2009StatutMembreDernière intervention26 septembre 2009
-
25 août 2009 à 14:49
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
Londonic
Messages postés298Date d'inscriptionjeudi 22 janvier 2009StatutMembreDernière intervention26 septembre 2009 25 août 2009 à 14:49
Trés belle démo, 10/10. Je la garde sous le coude.
J'ai utilisé la listview pour relier (adressage relatif) les raccourcis aux programmes quand on déplace la clé. C'est un vieux projet que j'appellais automenu et que j'ai renommé lanceur parce que mon automenu sera un controle utilisateur de selection d'étiquette (Je compte gérer des codes internes et laisser l'utilisateur se débrouiller avec le vocabulaire de l'application).
Je n'avais pas l'intention de le poster, mais si ca peut donner des idées.
bouv
Messages postés1411Date d'inscriptionmercredi 6 août 2003StatutMembreDernière intervention 3 mars 20191 18 août 2009 à 15:50
J'ai modifié pas mal de choses :
- Problème de l'ImageIndex corrigé
- Problème du PrintSetup corrigé (suffisait d'ajouté mSetupDlg.EnableMetric = True)
- Gestion des Groups améliorés (noms de propriétés plus harmonieux, plus performant,...)
- Tout le code ExViexMode a été réécrit (options ajoutés, variables renommées, code restructuré, bugs corrigés). C'est beaucoup plus clair ainsi et plus fidèle à la LV originale
Je poste ça dans 5 min.
PWM63
Messages postés127Date d'inscriptionlundi 11 octobre 2004StatutMembreDernière intervention18 mai 2016 17 août 2009 à 19:07
Merci Bouv,
Ca fonctionne en ajoutant ImageIndex. (la mise à jour de ton code pour ne pas rendre obligatoire cette option m'intéresse, mais rien est pressé !)
Je vais essayer d'être plus explicite pour le 2e problème (il est vrai que j'étais légèrement brouillon)
1) Imprime
2) Mesure la marge haut (2,54 cm = 1 pouce)
3) Mise en page
4) Valider (10 mm)
5) Imprime
6) Mesure la marge haut (1 cm : la marge est 2.54 fois plus petite)
7) Mise en page
8) Valider (3.9 mm)
9) Imprime
10) Mesure la marge haut (la marge est 2.54 fois plus petite)
11) Mise en page
12) Valider (1.5 mm)
et ainsi de suite...
Conclusions :
Après validation de la mise en page sur 1 certaine taille, la page est correctement imprimée à la bonne taille.
Cependant, lors de l'affichage des valeurs de mise en page, les valeurs sont erronées et sont 2.54 fois trop petite.
Quand on affiche les valeurs, elles sont exprimées en dixièmes de pouce.
Quand on valide les valeurs, elles sont exprimées en millimètres.
Conséquence :
Si l'on configure la mise en page et que l'on valide sans modifier aucune valeur, les valeurs sont divisées par 2.54 (pour rappel, 1 pouce = 2.54 cm)
bouv
Messages postés1411Date d'inscriptionmercredi 6 août 2003StatutMembreDernière intervention 3 mars 20191 17 août 2009 à 15:09
Pour la méthode d'ajout des items, je vois d'où viens le problème. Il faut impérativement spécifier la propriété ImageIndex.
Essai le code suivant :
Dim lvi As New ListViewItem(LV.Items.Count)
lvi.SubItems.Add(LV.Items.Count)
lvi.ImageIndex = 0
LV.Items.Add(lvi)
Je tenterai de corriger ça prochainement.
Par contre j'ai pas tout pigé au deuxième problème.
PWM63
Messages postés127Date d'inscriptionlundi 11 octobre 2004StatutMembreDernière intervention18 mai 2016 17 août 2009 à 13:50
Bonjour,
A première vue, cette listview me semble très bien !
Et je crois que je vais maintenant l'utiliser pour mes futures appli.
J'ai rajouté 1 bouton pour ajouter 1 item à la LV afin de vérifier le nombre de pages pour l'impression, c'est tout bon ! (par contre, bizarrement, je ne sais pas encore pourquoi, je n'ai pas poussé la recherche, mais la ligne ajoutée était vide, j'ai donc utilisé ta méthode, j'en profite pour mettre le code à la fin de ce commentaire)
J'ai par contre constaté 1 bug que je connaissais, je n'avais pas vérifié si ce bug était corrigé depuis, mais il semble que non, bug constaté la 1ère fois il y a quelques années en VB .Net 2003, qui semble bizarrement toujours d'actualité avec VB .Net 2008 Express : aperçu, on voit des marges d'environ 2.5 cm, mise en page, ca affiche 10 (mm) mais il s'agit en fait de l'affichage de 10 dixième de pouce, soit 1 pouce, soit 2.54 cm, ce qui semble correspondre à la marge constatée visuellement, si on valide, les 10 (mm) sont enregistrées, aperçu, la marge est réduite à priori à 1 cm (donc les 10 mm semblent ok), re mise en page, et le nombre a encore été divisé par 2.54 ! et ainsi de suite... (j'espère m'être fait comprendre)
Bonne prog !
++
Private Sub Button_Ajoute_1_item_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_Ajoute_1_item.Click
'Dim lvi As New ListViewItem(LV.Items.Count)
'lvi.SubItems.Add(LV.Items.Count)
'LV.Items.Add(lvi)
Dim MyItem As ListViewItem
MyItem = New ListViewItem(New String() {"DMB GS.mp3", "Dave Matthews Band", "Grey Street", "Busted Stuff"}, 0)
With LV
.Items.Add(MyItem)
End With
End Sub
BadoqueAlex
Messages postés129Date d'inscriptionmardi 20 juillet 2004StatutMembreDernière intervention 6 juin 2009 13 août 2009 à 11:35
Bien. Un meilleur exemple aurait été de reprendre le style graphique de Vista ou du MediaPlayer pour ton CS. 7/10
jaknight007
Messages postés17Date d'inscriptionmardi 8 mars 2005StatutMembreDernière intervention16 août 2014 12 août 2009 à 18:33
Très intéressante ta listview ! Je l'essaie avec grand plaisir
25 août 2009 à 14:49
J'ai utilisé la listview pour relier (adressage relatif) les raccourcis aux programmes quand on déplace la clé. C'est un vieux projet que j'appellais automenu et que j'ai renommé lanceur parce que mon automenu sera un controle utilisateur de selection d'étiquette (Je compte gérer des codes internes et laisser l'utilisateur se débrouiller avec le vocabulaire de l'application).
Je n'avais pas l'intention de le poster, mais si ca peut donner des idées.
18 août 2009 à 15:50
- Problème de l'ImageIndex corrigé
- Problème du PrintSetup corrigé (suffisait d'ajouté mSetupDlg.EnableMetric = True)
- Gestion des Groups améliorés (noms de propriétés plus harmonieux, plus performant,...)
- Tout le code ExViexMode a été réécrit (options ajoutés, variables renommées, code restructuré, bugs corrigés). C'est beaucoup plus clair ainsi et plus fidèle à la LV originale
Je poste ça dans 5 min.
17 août 2009 à 19:07
Ca fonctionne en ajoutant ImageIndex. (la mise à jour de ton code pour ne pas rendre obligatoire cette option m'intéresse, mais rien est pressé !)
Je vais essayer d'être plus explicite pour le 2e problème (il est vrai que j'étais légèrement brouillon)
1) Imprime
2) Mesure la marge haut (2,54 cm = 1 pouce)
3) Mise en page
4) Valider (10 mm)
5) Imprime
6) Mesure la marge haut (1 cm : la marge est 2.54 fois plus petite)
7) Mise en page
8) Valider (3.9 mm)
9) Imprime
10) Mesure la marge haut (la marge est 2.54 fois plus petite)
11) Mise en page
12) Valider (1.5 mm)
et ainsi de suite...
Conclusions :
Après validation de la mise en page sur 1 certaine taille, la page est correctement imprimée à la bonne taille.
Cependant, lors de l'affichage des valeurs de mise en page, les valeurs sont erronées et sont 2.54 fois trop petite.
Quand on affiche les valeurs, elles sont exprimées en dixièmes de pouce.
Quand on valide les valeurs, elles sont exprimées en millimètres.
Conséquence :
Si l'on configure la mise en page et que l'on valide sans modifier aucune valeur, les valeurs sont divisées par 2.54 (pour rappel, 1 pouce = 2.54 cm)
17 août 2009 à 15:09
Essai le code suivant :
Dim lvi As New ListViewItem(LV.Items.Count)
lvi.SubItems.Add(LV.Items.Count)
lvi.ImageIndex = 0
LV.Items.Add(lvi)
Je tenterai de corriger ça prochainement.
Par contre j'ai pas tout pigé au deuxième problème.
17 août 2009 à 13:50
A première vue, cette listview me semble très bien !
Et je crois que je vais maintenant l'utiliser pour mes futures appli.
J'ai rajouté 1 bouton pour ajouter 1 item à la LV afin de vérifier le nombre de pages pour l'impression, c'est tout bon ! (par contre, bizarrement, je ne sais pas encore pourquoi, je n'ai pas poussé la recherche, mais la ligne ajoutée était vide, j'ai donc utilisé ta méthode, j'en profite pour mettre le code à la fin de ce commentaire)
J'ai par contre constaté 1 bug que je connaissais, je n'avais pas vérifié si ce bug était corrigé depuis, mais il semble que non, bug constaté la 1ère fois il y a quelques années en VB .Net 2003, qui semble bizarrement toujours d'actualité avec VB .Net 2008 Express : aperçu, on voit des marges d'environ 2.5 cm, mise en page, ca affiche 10 (mm) mais il s'agit en fait de l'affichage de 10 dixième de pouce, soit 1 pouce, soit 2.54 cm, ce qui semble correspondre à la marge constatée visuellement, si on valide, les 10 (mm) sont enregistrées, aperçu, la marge est réduite à priori à 1 cm (donc les 10 mm semblent ok), re mise en page, et le nombre a encore été divisé par 2.54 ! et ainsi de suite... (j'espère m'être fait comprendre)
Bonne prog !
++
Private Sub Button_Ajoute_1_item_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_Ajoute_1_item.Click
'Dim lvi As New ListViewItem(LV.Items.Count)
'lvi.SubItems.Add(LV.Items.Count)
'LV.Items.Add(lvi)
Dim MyItem As ListViewItem
MyItem = New ListViewItem(New String() {"DMB GS.mp3", "Dave Matthews Band", "Grey Street", "Busted Stuff"}, 0)
With LV
.Items.Add(MyItem)
End With
End Sub
13 août 2009 à 11:35
12 août 2009 à 18:33