none
Comment bloquer la fenêtre dans le panel RRS feed

  • Discussion générale

  • Bonjour à tous.

    il y quelques temps, j'avais posé la question de savoir comment ouvrir une application dans mon programme. Cette question est résolue parl le code suivant :

    'Déclarations pour obtenir la fenetre KaraFun dans ma form
        Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As IntPtr
        Declare Auto Function SetParent Lib "user32.dll" (ByVal hWndChild As IntPtr, ByVal hWndNewParent As IntPtr) As Integer
        Declare Auto Function SendMessage Lib "user32.dll" (ByVal hWnd As IntPtr, ByVal Msg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer
        Private Const WM_SYSCOMMAND As Integer = 274
        Private Const SC_MAXIMIZE As Integer = 61488
        Dim proc As Process
     
    Private Sub TRAVAIL_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
                proc = Process.Start("C:\Musique\KaraFun Player\KaraFunPlayer.exe")
                proc.WaitForInputIdle()
                Dim hWnd As Long
                hWnd = FindWindow("TPlayFrm", "KaraFun Player")
                If hWnd <> 0 Then
                    SetParent(hWnd, Me.PAN_KARAFUNPLAYER.Handle)
                    SendMessage(hWnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0)
                End If
    End sub

    L'application à ouvrir est Karafunplayer. Jusque là pas de problème. Pour info Karafun semble développer en delphi d'après les infos que j'ai eu.

    Ces codes fonctionnent parfaitement.

    Néanmoins, je rencontre un soucis d'ancrage de l'application Karafun dans le panel où il est ouvert. En effet, si je click et que je glisse sur karafun, celui-ci disparait du panel mais il reste ouvet, ce qui est relativement gênant.

    On m'a conseillé de maximzer farafun et d'enlever les bordures de la fenêtre mais malheureusement, ces options ne sont pas disponibles pour l'application karafun.

    Je me tourne donc vers vous pour savoir s'il existe une solution à ce problème.

    J'ai bien pensé a faire un masque qui ne laisserait accès qu'aux boutons de karafun pour limiter les risques mais il semble que ce ne soit pas possible en VB

    Si vous avez des idées pour régler cette situation, je suis preneu

    Merci par avance à celles et ceux qui se pencherons sur mon soucis.

    Je précise que je suis débutant et que parfois, je ne comprends pas toujours du premier coup. LOL

    Encore meric d'avance

    @+ Martipit

    mardi 4 décembre 2012 09:18

Toutes les réponses