IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Maximize Minimize Close Button dans MDIForm


Sujet :

VB 6 et antérieur

  1. #1
    Membre éclairé Avatar de MADA BLACK
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2015
    Messages
    268
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Décembre 2015
    Messages : 268
    Par défaut Maximize Minimize Close Button dans MDIForm
    Bonjour Forum
    Bonjour tout le monde
    SVP si vous pouvez m'aider a corriger ce code que je l'ai utilise pour supprimer les options Minimize Maximize et Close dans MDIForm ..
    J'ai mis ce code .. je l'ai trouve au Net dans ma MDIForm :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub MDIForm_Load()
    Dim lWnd As Long
    lWnd = GetWindowLong(Me.hwnd, GWL_STYLE)
    lWnd = lWnd And Not (WS_MINIMIZEBOX)
    lWnd = lWnd And Not (WS_MAXIMIZEBOX)
    lWnd = SetWindowLong(Me.hwnd, GWL_STYLE, lWnd)
    End Sub
    Et ensuite ce code dans un module simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    #If Win32 Then
    Private Declare Function SetWindowLong Lib "user32" _
    Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal _
    nIndex As Long, ByVal dwNewLong As Long) As Long
    Private Declare Function GetWindowLong Lib "user32" _
    Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal _
    nIndex As Long) As Long
    #Else
    Declare Function SetWindowLong Lib "User" (ByVal hwnd _
    As Integer, ByVal nIndex As Integer, ByVal _
    dwNewLong As Long) As Long
    Declare Function GetWindowLong Lib "User" (ByVal hwnd _
    As Integer, ByVal nIndex As Integer) As Long
    #End If
     
    Const WS_MINIMIZEBOX = &H20000
    Const WS_MAXIMIZEBOX = &H10000
    Const GWL_STYLE = (-16)
    Voila la ligne d'erreur ..
    Merci beaucoup d'avance pour l'aide
    MADA
    Images attachées Images attachées  

  2. #2
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 124
    Par défaut
    Salut

    Toutes fonctions déclarées dans ton module, si tu veux quelles soient accessibles hors de ce module, doivent être déclarées Public.
    En l'absence des mots clés Public ou Private, les procédures Sub ou function sont publiques par défaut.
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  3. #3
    Membre éclairé Avatar de MADA BLACK
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2015
    Messages
    268
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Décembre 2015
    Messages : 268
    Par défaut
    Bonjour ProgElect
    Merci 1000 fois pour votre lecon .. croyez moi je suis tres debutant dans ce domaine ..comment ce code sera ecrit svp
    J'ai change dans le module le mot Private par Public mais ca ne fonctionne pas malheureusement les options Maximize et Minimize toujours affichees
    Merci beaucoup d'avance pour l'aide
    Cordialement
    MADA

  4. #4
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 124
    Par défaut
    Re
    Bonjour ProgElect
    Merci 1000 fois pour votre lecon
    .......
    Je ne prêtant pas donner de leçon, tout au plus donner des informations, si j'en ai à donner

    Dans le module:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    Option Explicit
     
    #If Win32 Then
        Public Declare Function SetWindowLong Lib "user32" _
        Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal _
        nIndex As Long, ByVal dwNewLong As Long) As Long
        '--------------------------------------------------------------
        Public Declare Function GetWindowLong Lib "user32" _
        Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal _
        nIndex As Long) As Long
    #Else
        Declare Function SetWindowLong Lib "User" (ByVal hwnd _
        As Integer, ByVal nIndex As Integer, ByVal _
        dwNewLong As Long) As Long
        '--------------------------------------------------------------
        Declare Function GetWindowLong Lib "User" (ByVal hwnd _
        As Integer, ByVal nIndex As Integer) As Long
    #End If
     
    'Public Const WS_MINIMIZEBOX = &H20000
    'Public Const WS_MAXIMIZEBOX = &H10000
    Public Const GWL_STYLE = (-16)
    Public Const WS_SYSMENU = &H80000
    dans MDIForm1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Option Explicit
     
    Sub MDIForm_Load()
        Dim lWnd As Long
        lWnd = GetWindowLong(Me.hwnd, GWL_STYLE)
        'lWnd = lWnd And Not (WS_MINIMIZEBOX)
        'lWnd = lWnd And Not (WS_MAXIMIZEBOX)
        lWnd = lWnd And Not (WS_SYSMENU)
        lWnd = SetWindowLong(Me.hwnd, GWL_STYLE, lWnd)
    Form1.Show
    End Sub
    Dans form1 (MDIChild), avec un CommandButton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Option Explicit
     
    Private Sub Command1_Click()
    End
    End Sub
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  5. #5
    Membre éclairé Avatar de MADA BLACK
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2015
    Messages
    268
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Décembre 2015
    Messages : 268
    Par défaut
    Bonsoir ProgElect
    Dans tous les cas merci ..tres tres gentil de votre part
    Merci encore pour vos impeccables codes
    Parfaitement resolu
    Amicalement
    MADA
    Images attachées Images attachées  

  6. #6
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 124
    Par défaut
    Re Re dernière

    Je ne sais pas si tu n'a pas besoin d’empêcher tous redimensionnements automatiques fais par windows quand tu déplaces le MDIForm plus haut que l'écran ou plus loin que les cotés droit ou gauche ?
    Si oui
    Dans le module
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Public Const GWL_STYLE = (-16)
    Public Const WS_MINIMIZEBOX = &H20000
    Public Const WS_MAXIMIZEBOX = &H10000
    Public Const WS_SYSMENU = &H80000
    Public Const WS_SIZEBOX = &H40000
    Dans dans MDIForm1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Option Explicit
     
    Sub MDIForm_Load()
        Dim lWnd As Long
        lWnd = GetWindowLong(Me.hwnd, GWL_STYLE)
        lWnd = lWnd And Not (WS_MINIMIZEBOX)
        lWnd = lWnd And Not (WS_MAXIMIZEBOX)
        lWnd = lWnd And Not (WS_SYSMENU)
        lWnd = lWnd And Not (WS_SIZEBOX)
        lWnd = SetWindowLong(Me.hwnd, GWL_STYLE, lWnd)
    Form1.Show
    End Sub
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  7. #7
    Membre éclairé Avatar de MADA BLACK
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2015
    Messages
    268
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Décembre 2015
    Messages : 268
    Par défaut
    ProgElect
    Je n'ai qu'a vous dire " BRAVO "
    Cordialement
    MADA

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 18/12/2006, 18h39
  2. button dans frameborder.. est ce possible ?
    Par 205 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 02/06/2006, 13h59
  3. Gérer les boutons Minimize,Close d'une forme
    Par Chupakabra dans le forum Langage
    Réponses: 2
    Dernier message: 05/10/2005, 11h42
  4. Réponses: 2
    Dernier message: 26/05/2005, 12h11
  5. [VB6] [Graphisme] Image de fond stretchable dans mdiform
    Par SpaceFrog dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 17/02/2003, 10h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo