Welcome, Guest
Username: Password: Remember me
Qui si parla italiano
  • Page:
  • 1

TOPIC:

Modifica della proprietà CAPTION di una voce di menù. 20 Jan 2023 01:34 #25017

  • veliero
  • veliero's Avatar
  • Topic Author


  • Posts: 15
  • Salve a tutti,
    stavo smanettando con i menù, in particolare con l'EmptyShellMenu sotto l'applicazione Standard VO MDI generata in ambiente XIDE.
    Mi chiedevo se fosse possibile modificare la CAPTION di una certa voce di menù dopo che lo stesso è stato associato alla StandardShellWindow nel metodo INIT:

    METHOD Init( oOwnerApp ) CLASS StandardShellWindow

    LOCAL oSB AS StatusBar

    SUPER:Init( oOwnerApp )

    SetDeleted(TRUE)

    oSB := SELF:EnableStatusBar()
    oSB:DisplayTime()

    SELF:Menu := EmptyShellMenu{SELF} <===========

    mi occorre fare ciò poiché in un'applicazione sotto VO che sto provando a replicare sotto X# vorrei modificare la CAPTION di una voce di menù se l'utente compie una determinata azione nel mio programma.
    Ho esaminato la CLASSE MENU ma trovo solo metodi per vedere le diverse proprietà (GET) ma non per poterle impostare (SET); in particolare per la CAPTION che vorrei modificare.
    Spero di essere stato chiaro. Qualcuno può aiutarmi?

    Saluti
    Francesco

    Please Log in or Create an account to join the conversation.

    Modifica della proprietà CAPTION di una voce di menù. 20 Jan 2023 06:07 #25018

    • wriedmann
    • wriedmann's Avatar


  • Posts: 3242
  • Ciao Francesco,
    in questi casi cambio l'intero menu della finestra.
    Dovrebbe essere possibile con un po di Windows API:
    stackoverflow.com/questions/24942087/how...hange-menu-item-text
    Saluti
    Wolfgang
    Wolfgang Riedmann
    Meran, South Tyrol, Italy

    www.riedmann.it - docs.xsharp.it

    Please Log in or Create an account to join the conversation.

    Modifica della proprietà CAPTION di una voce di menù. 20 Jan 2023 11:28 #25021

    • g.bunzel@domonet.de's Avatar


  • Posts: 84
  • Ciao Francesco,

    FUNCTION MenuChangeItem (oMenu AS Menu, nID AS DWORD, cCaption AS STRING) AS LOGIC PASCAL
    LOCAL mii IS _winMENUITEMINFO
    LOCAL pNewText AS PTR
    LOCAL lRet := FALSE AS LOGIC

    IF nID > 0
    pNewText := MemAlloc(256)
    mii.cbSize := _SIZEOF(_winMENUITEMINFO)
    mii.fMask := MIIM_TYPE
    mii.fType := MFT_STRING
    mii.cch := 256
    mii.dwTypeData := pNewText
    IF GetMenuItemInfo(oMenu:Handle(), nID, FALSE, @mii)
    MemCopyString(pNewText, cCaption + _CHR(0), SLen(cCaption)+1)
    mii.cch := SLen(cCaption) + 1
    lRet := SetMenuItemInfo(oMenu:Handle(), nID, FALSE, @mii)
    ENDIF
    MemFree(pNewText)
    ENDIF

    RETURN lRet

    Saluti
    Gerhard

    Please Log in or Create an account to join the conversation.

    Modifica della proprietà CAPTION di una voce di menù. 21 Jan 2023 01:02 #25030

    • veliero
    • veliero's Avatar
    • Topic Author


  • Posts: 15
  • Grande Gherard,
    la funzione è perfetta e lavora molto bene :)

    Saluti
    Francesco

    Please Log in or Create an account to join the conversation.

    • Page:
    • 1
    Moderators: wriedmann