Is it possible to create in a window a simple menu, like the startMenu of windows, in the left bottom of this window

Thanks


The happiness is a road...
The happiness is a road...Code: Select all
Global menuImageWidth = GetSystemMetrics_(#SM_CXMENUCHECK)
Global menuImageHeight = GetSystemMetrics_(#SM_CYMENUCHECK)
CreateImage(0,30,30)
StartDrawing(ImageOutput(0))
For x = 0 To 29
For y = 0 To 29
Plot(x,y, RGB(x,y,x*y))
Next
Next
StopDrawing()
Procedure SetImage(iMenu, iID, ico)
ExtractIconEx_("shell32.dll", ico, 0, @iIcon, 1)
im=CreateImage(#PB_Any, 16, 16)
himg = StartDrawing(ImageOutput(im))
Box(0, 0, 16, 16, RGB(255, 255, 255))
DrawImage(iIcon, 0, 0, 16, 16)
StopDrawing()
itemImage = ResizeImage(im, menuImageWidth, menuImageHeight)
SetMenuItemBitmaps_(iMenu,iID,#MF_BYPOSITION,itemImage,0)
DestroyIcon_(iIcon)
EndProcedure
OpenWindow(0, 0, 0, 600, 300, "TEST",#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_SizeGadget)
SetWindowColor(0,$BCFCFD)
ContainerGadget(0,0,270,400,30,#PB_Container_Single)
ButtonImageGadget(1,2,0,30,30,ImageID(0))
hMenu = CreatePopupMenu(0)
MenuItem(0, "Testing 0")
MenuItem(1, "Testing 1")
sMenu = OpenSubMenu("Submenu")
MenuItem(2, "Testing 2")
MenuItem(3, "Testing 3")
MenuItem(4, "Testing 4")
MenuItem(5, "Testing 5")
SetImage(hMenu, 0, 4)
SetImage(hMenu, 1, 130)
SetImage(hMenu, 2, 194)
SetImage(sMenu, 0,4)
SetImage(sMenu, 1, 43)
SetImage(sMenu, 2, 10)
SetImage(sMenu, 3, 90)
Repeat
Select WaitWindowEvent()
Case #PB_Event_SizeWindow
ResizeGadget(0,-2,WindowHeight(0)- 32,WindowWidth(0)+4,32)
Case #PB_Event_Gadget
Select EventGadget()
Case 1
DisplayPopupMenu(0, WindowID(0),WindowX(0)+GadgetX(0)+12, WindowY(0)+WindowHeight(0) - 70)
EndSelect
Case #PB_Event_Menu
Select EventMenu()
Case 0 : Debug "MenuItem #0"
Case 1 : Debug "MenuItem #1"
Case 2 : Debug "MenuItem #2"
Case 3 : Debug "MenuItem #3"
Case 4 : Debug "MenuItem #4"
Case 5 : Debug "MenuItem #5"
Case 6 : Debug "MenuItem #6"
EndSelect
Case #PB_Event_CloseWindow
Quit = 1
EndSelect
Until Quit = 1

The happiness is a road...Code: Select all
CreateImage(0,60,30)
StartDrawing(ImageOutput(0))
For x = 0 To 20
For y = 0 To 29
Plot(x,y, RGB(x,y,x*y))
Next
Next
DrawText(24,6,"Start")
StopDrawing()
Procedure SetImage(iMenu, iID, ico)
ExtractIconEx_("shell32.dll", ico, 0, @iIcon, 1)
im=CreateImage(#PB_Any, 32, 32)
StartDrawing(ImageOutput(im))
Box(0, 0, 32, 32, GetSysColor_(#COLOR_MENU))
DrawImage(iIcon, 0, 0, 32, 32)
StopDrawing()
SetMenuItemBitmaps_(iMenu,iID,#MF_BYPOSITION,ImageID(im),0)
DestroyIcon_(iIcon)
EndProcedure
OpenWindow(0, 0, 0, 600, 300, "TEST",#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_SizeGadget)
SetWindowColor(0,$BCFCFD)
ContainerGadget(0,0,270,400,30,#PB_Container_Single)
ButtonImageGadget(1,2,0,60,30,ImageID(0))
hMenu = CreatePopupMenu(0)
MenuItem(0, "Testing 0")
MenuItem(1, "Testing 1")
sMenu = OpenSubMenu("Submenu")
MenuItem(2, "Testing 2")
MenuItem(3, "Testing 3")
MenuItem(4, "Testing 4")
MenuItem(5, "Testing 5")
SetImage(hMenu, 0, 4)
SetImage(hMenu, 1, 130)
SetImage(hMenu, 2, 194)
SetImage(sMenu, 0,4)
SetImage(sMenu, 1, 43)
SetImage(sMenu, 2, 10)
SetImage(sMenu, 3, 90)
Repeat
Select WaitWindowEvent()
Case #PB_Event_SizeWindow
ResizeGadget(0,-2,WindowHeight(0)- 32,WindowWidth(0)+4,32)
Case #PB_Event_Gadget
Select EventGadget()
Case 1
DisplayPopupMenu(0, WindowID(0),WindowX(0)+GadgetX(0)+12, WindowY(0)+WindowHeight(0) - 120)
EndSelect
Case #PB_Event_Menu
Select EventMenu()
Case 0 : Debug "MenuItem #0"
Case 1 : Debug "MenuItem #1"
Case 2 : Debug "MenuItem #2"
Case 3 : Debug "MenuItem #3"
Case 4 : Debug "MenuItem #4"
Case 5 : Debug "MenuItem #5"
Case 6 : Debug "MenuItem #6"
EndSelect
Case #PB_Event_CloseWindow
Quit = 1
EndSelect
Until Quit = 1

take your for the W9
The happiness is a road...