Français
Source/ Codesnippets

désactiver Gesamtes menu

 

Jac
de
Lad
allô Community,

gibts une Possibilité, cela gesamte, avec CreateMenu erstellte menu sur einmal trop désactiver? et comment peux je zwischenrein la fois vite un d'autre menu définir, dass angezeigt volonté soll (et anschließend wieder cela erste)?

Jac
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
14.09.2006  
 



si und dir ensuite steht es ici: [...] 

Denke aussi à: &hMenu 
 
14.09.2006  
 



Mir fiel là grad encore User32s SetParent  de &hMenu  un - ou bien so un Quarks ebend...
 
14.09.2006  
 




Jörg
Sellmeyer
allô Jac,
peut-être hilft Dir cela:
[...] 

ou bien cela:
[...] 

cela vieille Forum ist ne echte Fundgrube! Es lohnt sich là trop chercher bevor on fragt
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
14.09.2006  
 




KompilierenMarqueSéparation
Autor: Norbert Spörl (---.dip.t-dialin.net)
Datum:   06.03.03 15:29
DEF EnableMenuItem(3) !"USER32","EnableMenuItem"
DEF GetMenu(1) !"USER32","GetMenu"
cls
declare abbrechen%, cmenu_off%
cmenu_off% = 0
locate 1,1
print "Aktivieren/Deaktivieren des Copyright-Menüs duch Mausklick im Client-Area !"

while (abbrechen% = 0)

    waitinput

    If (%menuitem = 254)

        continue

    endif

    if (cmenu_off% = 0)

        messagebox "... Copyright-Menü ausschalten", "... mit nächstem <OK>", 32
        EnableMenuitem(GetMenu(%hwnd), 0, $402)
        cmenu_off% = 1

    else

        messagebox "... Copyright-Menü aktivieren", "... mit Mausklick <OK>", 32
        EnableMenuitem(GetMenu(%hwnd), 0, $400)
        cmenu_off% = 0

    endif

    if (%key = 27)

        -> Esc-Taste = Abbrechen
        abbrechen% = 1

    endif

endwhile

end

KompilierenMarqueSéparation
Autor: Sebastian König (---.dip0.t-ipconnect.de)
date:   08.05.03 00:25
graymenu.prf - Hauptmenu komplett (de)aktivieren
Autor: Sebastian König
email: feedback@sekoenig.de
Page d'accueil: http://www.sekoenig.de
Copyright © 2003 Sebastian König
DEF EnableMenuItem(3) !"User32","EnableMenuItem"
DEF GetMenu(1) !"User32","GetMenu"
DEF GetMenuItemCount(1) !"User32","GetMenuItemCount"
DEF DrawMenuBar(1) !"User32","DrawMenuBar"
declare MY_GRAYED&,MF_BYPOSITION&,MF_ENABLED&
let MY_GRAYED&     = $0001
let MF_BYPOSITION& = $0400
let MF_ENABLED&    = $0000

proc DisableMainMenu

    declare hMenu&,count&,i&
    let hMenu& = GetMenu(%hwnd)
    let count& = GetMenuItemCount(hMenu&)
    let i& = 0

    tandis que @lt(i&,count&)

        EnableMenuItem(hMenu&,i&,@or(MY_GRAYED&,MF_BYPOSITION&))
        let i& = @add(i&,1)

    Wend

    DrawMenuBar(%hwnd)

endproc

proc EnableMainMenu

    declare hMenu&,count&,i&
    let hMenu& = GetMenu(%hwnd)
    let count& = GetMenuItemCount(hMenu&)
    let i& = 0

    tandis que @lt(i&,count&)

        EnableMenuItem(hMenu&,i&,@or(MF_ENABLED&,MF_BYPOSITION&))
        let i& = @add(i&,1)

    Wend

    DrawMenuBar(%hwnd)

endproc

---Test:
Cls
PopUp "&Datei"
AppendMenu 100,"..."
PopUp "B&earbeiten"
AppendMenu 200,"..."
PopUp "&Hilfe"
AppendMenu 300,"..."
imprimer "[D] = désactiver / [A] = Aktivieren"

tandis que 1

    waitinput

    si @KeyIn("Dd")

        DisableMainMenu

    elseif @KeyIn("Aa")

        EnableMainMenu

    endif

Wend

end
 
15.09.2006  
 




Jac
de
Lad
je blicke chez den ganzen Quelltexten pas par. je veux, comment dit, cela ganze menu désactiver, alors aussi qui Popups, sodass on aussi rien plus Vous pouvez peux et es klappt sich quoi aus, cela mon je.
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
15.09.2006  
 



Probiere la fois enable(window|menu) getmenu(%hwnd),0
 
15.09.2006  
 




Jac
de
Lad
Klappt pas (PS: je erstelle cela Menu avec qui DlgMenu.pcu sur dem %HWnd)
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
15.09.2006  
 



exposition la fois klappt:
KompilierenMarqueSéparation
 {$cleq}
 $U dlgmenu.pcu = menu.
Def Enablemenuitem(3) !"USER32","EnableMenuItem"
Def Getmenuitemcount(1) !"USER32","GetMenuItemCount"
Def Drawmenubar(1) !"USER32","DrawMenuBar"
declare menu&,dlg&,dlg2&,dlg3&
Cls
windowstyle 4+8
dlg&=CreateWindow(%hwnd,"Dialog mit Menü",0,0,200,200)
dlg2&=CreateWindow(%hwnd,"Dialog2 mit Menü",200,0,200,200)
dlg3&=CreateWindow(%hwnd,"Dialog3 mit Menü",400,0,200,200)
buildmenu %hwnd
buildmenu dlg&
buildmenu dlg2&
buildmenu dlg3&

Whilenot (%key==2)

    waitinput

    if (abs(%menuitem)==104)

        break

    endif

Wend

end

proc buildmenu

    parameters dlg&
    menu&:=menu.new(dlg&)
    menu.setNiceBackground
    menu.popup "&Datei"
    menu.appendmenu 100,"Neu"
    menu.appendmenu 101,"Öffnen"
    menu.separator
    menu.subpopup "Export"
    menu.appendmenu 102,"Bitmap"
    menu.appendmenu 103,"Vector"
    menu.separator
    menu.subpopup "Mega-XPort"
    menu.appendmenu 105,"Ja"
    menu.separator
    menu.subpopup "Nein"
    menu.appendmenu 105,"Ja"
    menu.endsub
    menu.appendmenu 101,"Öffnen"
    menu.endsub
    menu.appendmenu 101,"Öffnen"
    menu.endsub
    menu.appendmenu 101,"Öffnen"
    menu.separator
    menu.appendmenu 104,"&Beenden"
    menu.popup "&Bearbeiten"
    menu.appendmenu 200,"Rückgängig"
    menu.separator
    menu.appendmenu 201,"Widerherstellen"
    menu.popup "&?"
    menu.appendmenu 200,"About"
    menu.separator
    menu.appendmenu 201,"Hilfe"
    menu.checkmenu menu&,101,1
    menu.enablemenu 102,0
    menu.setitemicon menu&,100,"tile.bmp"
    declare count&,i&
    Let Count& = Getmenuitemcount(menu&)
    Let I& = 0

    While @Lt(I&,Count&)

        Enablemenuitem(menu&,I&,$0401)
        Let I& = @Add(I&,1)

    Wend

    Drawmenubar(%Hwnd)a class=s4 href='./../../function-references/XProfan/endproc/'>endproc

 
15.09.2006  
 



Nachtrag: exposition la fois cet Konstanten peux Du nutzen statt $0401 comment dessus:
KompilierenMarqueSéparation
MF_APPEND = { $100 | 256 }
MF_BITMAP = { $4 | 4 }
MF_BYCOMMAND = { $0 | 0 }
MF_BYPOSITION = { $400 | 1024 }
MF_CHANGE = { $80 | 128 }
MF_CHECKED = { $8 | 8 }
MF_DEFAULT = { $1000 | 4096 }
MF_DELETE = { $200 | 512 }
MF_DISABLED = { $2 | 2 }
MF_ENABLED = { $0 | 0 }
MF_END = { $80 | 128 }
MF_GRAYED = { $1 | 1 }
MF_HELP = { $4000 | 16384 }
MF_HILITE = { $80 | 128 }
MF_INSERT = { $0 | 0 }
MF_MENUBARBREAK = { $20 | 32 }
MF_MENUBREAK = { $40 | 64 }
MF_MOUSESELECT = { $8000 | 32768 }
MF_OWNERDRAW = { $100 | 256 }
MF_POPUP = { $10 | 16 }
MF_REMOVE = { $1000 | 4096 }
MF_RIGHTJUSTIFY = { $4000 | 16384 }
MF_SEPARATOR = { $800 | 2048 }
MF_STRING = { $0 | 0 }
MF_SYSMENU = { $2000 | 8192 }
MF_UNCHECKED = { $0 | 0 }
MF_UNHILITE = { $0 | 0 }
MF_USECHECKBITMAPS = { $200 | 512 <
olor=#0000FF>}
 
15.09.2006  
 



Zum Quelltext


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

6.119 Views

Untitledvor 0 min.
Gast.081528.08.2024
AndreasS17.12.2018
E.T.03.03.2018
Heltal25.07.2014

Themeninformationen

cet Thema hat 3 participant:

iF (6x)
Jac de Lad (3x)
Jörg Sellmeyer (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie