Pour faire un peu d'esthétique sur un menu (Windows) d'une fenêtre, j'avais besoin de positionné le menu "Langue" a droite. Alors j'ai fait une petite fonction, je ne sais pas si ce sera utile et même si cela n'a pas encore été fait?
Une image est plus parlante :

Voila le code :
Code : Tout sélectionner
; ****************************************************************************
; ****************************************************************************
; ****************************************************************************
; ****************************************************************************
; +--------------------------------------------------------------------------+
; | |
; +--------------------------------------------------------------------------+
Procedure menu_rightjustify(hWnd.i, stext.s, impos.i)
;
Define itmp.i
Define MnuInfo.MENUITEMINFO
Define mnuH.i = GetMenu_(hWnd)
With MnuInfo
\cbSize = SizeOf(MnuInfo)
\fMask = #MIIM_TYPE
\fType = #MFT_RIGHTJUSTIFY | #MFT_STRING
\cch = Len(stext)
\dwTypeData = @stext
EndWith
SetMenuItemInfo_(mnuH, impos, #True, MnuInfo)
DrawMenuBar_(hWnd)
EndProcedure
; ****************************************************************************
; ****************************************************************************
; ****************************************************************************
; ****************************************************************************
; +--------------------------------------------------------------------------+
; | |
; +--------------------------------------------------------------------------+
Enumeration
#Window_main
#MnuMenu_0
EndEnumeration
Define event.l
Define hWnd.l = OpenWindow(#Window_main, 0, 0, 800, 600, "Right Menu", #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget | #PB_Window_ScreenCentered)
If hWnd <> 0
If CreateImageMenu(#MnuMenu_0, WindowID(#Window_main))
MenuTitle("&Fichier") ; menu principal 0.
MenuItem(1, "Nouveau", 0)
MenuItem(2, "Ouvrir...",0)
MenuBar()
MenuItem(3, "Enregistrer", 0)
MenuItem(4, "Enregistrer Sous...", 0)
MenuBar()
MenuItem(5, "Préférences...", 0)
MenuBar()
MenuItem(6, "Quittez le Logiciel", 0)
MenuTitle("&Menu XXX") ; menu principal 1.
MenuTitle("&Menu XXX") ; menu principal 2.
MenuItem(7, "Texte du menu", 0)
MenuBar()
MenuItem(8, "Texte du menu", 0)
MenuTitle("&Menu XXX") ; menu principal 3.
MenuItem(9, "Texte du menu", 0)
MenuBar()
MenuItem(10, "Texte du menu", 0)
MenuTitle("&Aide") ; menu principal 4.
MenuItem(100, "Mode d'emploi logiciel" + #TAB$ + "F1", 0)
MenuItem(101, "Support Technique", 0)
MenuItem(102, "Mise a Jour du logiciel", 0)
MenuBar()
MenuItem(103, "Activation du Logiciel", 0)
MenuItem(104, "Faire une Donnation", 0)
MenuBar()
MenuItem(105, "A propos de...", 0)
MenuTitle("&Langue") ; menu principal 5.
MenuItem(106, "Francais", 0)
MenuItem(107, "Allemand", 0)
EndIf
;
; JUSTIFICATION DU MENU
; hWnd = Adresse de la fenêtre.
; stext = Texte dans le menu.
; impos = Position du menu principal.
;
menu_rightjustify(hWnd, "&Langue", 5)
;
; JUSTIFICATION DU MENU
; hWnd = Adresse de la fenêtre.
; stext = Texte dans le menu.
; impos = Position du menu principal.
;
Repeat
event = WaitWindowEvent(10)
Until event = #PB_Event_CloseWindow
EndIf
GallyHC