VB10: par quoi est remplacé le mousepointer du vb6 ?

Résolu
Duke49 Messages postés 552 Date d'inscription jeudi 12 octobre 2006 Statut Non membre Dernière intervention 24 janvier 2023 - 24 nov. 2010 à 00:17
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 - 24 nov. 2010 à 20:14
Salut !!!

Au chargement de mon projet, le curseur a le sablier.
Comment rafraichir mon pointeur ?
Comment annuler l'apparence automatique du pointeur ?

J'ai déjà essayé Microsoft.VisualBasic.Devices.Mouse
Y'a que 3 paramètres sans intérêt :(

Je n'arrive pas a utiliser System.Windows.Input.Mouse
"Public NotInheritable Class Mouse?" sa me dépasse !

Une idée

7 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
24 nov. 2010 à 09:06
Utilise la propriété Cursor de chaque Form


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
3
Duke49 Messages postés 552 Date d'inscription jeudi 12 octobre 2006 Statut Non membre Dernière intervention 24 janvier 2023 4
24 nov. 2010 à 12:16
System.Windows.Forms.Cursor.Current = Cursors.Default

Merci !

Cependant, j'utilise windows media player qui change quand même
mon curseur malgré ça :(

        Dim myAudio As New WMPLib.WindowsMediaPlayer
        Dim pfile As String = "test.mp3"

        myAudio.uiMode = "none"
        myAudio.enableContextMenu = False
        myAudio.settings.setMode("autoRewind", True)
        myAudio.settings.enableErrorDialogs = False
        myAudio.URL = pfile
        myAudio.settings.autoStart = True
        System.Windows.Forms.Cursor.Current = Cursors.Default


Le temps que la lib charge la musique, le pointeur change toute même en
waiting... Mon code n'a pas la main !
Il n'existe pas de: myAudio.settings.setMode("MouseWait", False)
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
24 nov. 2010 à 18:13
Le temps que la lib charge la musique, le pointeur change toute même en
waiting... Mon code n'a pas la main !


Normal, ce n'est pas ton application qui change le curseur mais Windows lui même, car au moment du chargement ton application ne répond plus. De plus :

        Dim myAudio As New WMPLib.WindowsMediaPlayer
        Dim pfile As String = "test.mp3"

        myAudio.uiMode = "none"
        myAudio.enableContextMenu = False
        myAudio.settings.setMode("autoRewind", True)
        myAudio.settings.enableErrorDialogs = False
        myAudio.URL = pfile
        myAudio.settings.autoStart = True
        System.Windows.Forms.Cursor.Current = Cursors.Default' <= Tu met ton code après
     


Donc même dans le cas ou cela fonctionnerait, le curseur ne se changerait qu'à la fin du chargement.

Mais tu as l'air bien embêté pour pas grand chose, ton chargement est vraiment si long que ca ? Ou c'est juste du chipotage ?

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
Duke49 Messages postés 552 Date d'inscription jeudi 12 octobre 2006 Statut Non membre Dernière intervention 24 janvier 2023 4
24 nov. 2010 à 18:46
Du chipotage ! NON !
Le code respire bien, je comprends pas pourquoi un mp3 de 800 ko
chargé avec WMPlib me change mon pointeur en sablier !

Peut-être dû a ce code qui est situé dans un contrôle BackgroundWorker ?.

Un défis embêtant pour toi Mayzz ^^:
Essai mon bout de code en remplacement le chemin au fichier mp3 par un
chemin vers un fichier XM.

Oui ^^
Que fait cette boite de dialogue alors que settings.enableErrorDialogs = False ?

Sans interagir avec celle-ci (coche rien, clique sur non)
Maintenant, essai d'enlever cette boite de dialogue par du code.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
24 nov. 2010 à 19:09
Ok, je comprend mieux après avoir essayé ^^

En effet, il semble que cela soit simplement lié au composant et que c'est lui qui décide de changer le curseur, mais au niveau de Windows lui même et non de l'application, car tu remarqueras que lors ce que le pointeur de ta souris quitte la suface du formulaire de l'appli le curseur est encore en sablier.

Pour la boîte de dialogue il me semble que c'est simplement un oubli de MS.

Voila, pourquoi il n'est pas recommandé d'utiliser des composants externes (et encore moins des ActiveX en .Net). J'aime savoir ce qui se trouve dans mes soft, et pourvoir corriger les bugs quand c'est necessaire, pour le coup donne moi la source de WMPLib et je te corrige ça ^^

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
Duke49 Messages postés 552 Date d'inscription jeudi 12 octobre 2006 Statut Non membre Dernière intervention 24 janvier 2023 4
24 nov. 2010 à 19:47
T'es cool ;)

Autre parenthèse, comment lire un MP3:
- Sans utiliser la reference Directx Manager (bug sous xp)
- Sans être obligé de joindre une DLL (genre bass)
- Sans utiliser une liaison COM (comme tu dis com ext c naz)

Même dans le framework 4 il n 'y a rien !

Comme si microsoft n'était plus le propriétaire de son directx,
windows xp supporte mal cette vulgaire v1.1 de l'assembly microsoft.directx.audiovideoplayback.

Le top pour parfaire le vb10 serait ceci:
        Inherits Microsoft.VisualBasic.Devices.Audio
 
        Dim pfile As String = "test.xm"
        Dim mdataxm() As Byte = IO.File.ReadAllBytes(pfile)
        Dim mdatawav() as Byte
 
        'FUNCTION DECRYPT MDATAXM vers MDATAWAV
        'mdatawav = AudioMapper(mdataxm, MapperEncoder.ModuleToWave)
 
        Me.Play(mdatawav, AudioPlayMode.BackgroundLoop)

(VOIR: http://www.vbfrance.com/forum/sujet-CONVERTIR-FICHIER-SON-XM-VERS-WAV_1481511.aspx)

Enfin on peu rêver :(
Quoi que j'ai une petite source en C d'un décoder XM vers WAV;
qui serait capable de me le traduire en .NET; ou faire une pareil demande ?
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
24 nov. 2010 à 20:14
Pour la trad je suis désolé, mais je ne pense pas avoir les compétences requises, de plus je manque cruellement de temps.

Mais je peux au moins t'orienter vers une autre piste si tu ne l'a pas déjà essayé, c'est FMOD.dll, c'est une lib de son très performante, je ne sais pas si elle est tjs d'actualité je l'utilisais à l'époque de mon dev en vb6, si c'est le cas il doit surement y avoir une version .Net

Voila, ++


Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
Rejoignez-nous