Difference between revisions of "Lua:Class:PopupMenu"

From Cheat Engine
Jump to navigation Jump to search
(Major overhaul of the post.)
 
Line 1: Line 1:
 
[[Category:Lua]]
 
[[Category:Lua]]
PopupMenu '''class''': ('''Inheritance''': ''[[Lua:Class:Menu|Menu]]''->''[[Lua:Class:Component|Component]]''->''[[Lua:Class:Object|Object]]'')
+
{{Class|'''class''' PopupMenu ''':''' Menu}}
  
The pop up menu is the [[Menu]] that pops up when showing the (right-click) context of a control.
+
The PopupMenu class represents a context menu.
 +
 
 +
A popup menu is the menu that appears when showing the right-click context menu of a control. It can be created with [[Lua:createPopupMenu|createPopupMenu]].
 +
 
 +
===Inheritance===
 +
{|width="85%" cellpadding="10%" cellspacing="0" border="0"
 +
!align="left"|Class
 +
!align="left"|Inherits From
 +
!style="width: 80%;background-color:white;" align="left"|Description
 +
|-
 +
|PopupMenu
 +
|Menu
 +
|Represents a context menu.
 +
|-
 +
|Menu
 +
|Component
 +
|Base class for menu objects.
 +
|-
 +
|Component
 +
|Object
 +
|Base class for components.
 +
|-
 +
|Object
 +
|None
 +
|Base class for Lua-exposed objects.
 +
|}
  
 
== Creation ==
 
== Creation ==
; createPopupMenu(''owner'') : PopupMenu
 
: Returns a newly created PopupMenu.
 
  
{{LuaSeeAlso}}
+
{{CodeBox|'''function''' createPopupMenu(''owner'') ''':''' PopupMenu}}
 +
 
 +
Creates a PopupMenu object.
 +
 
 +
===Function Parameters===
 +
{|width="85%" cellpadding="10%" cellspacing="0" border="0"
 +
!align="left"|Parameter
 +
!align="left"|Type
 +
!style="width: 80%;background-color:white;" align="left"|Description
 +
|-
 +
|owner
 +
|[[Lua:Class:Component|Component]]
 +
|The owner of the popup menu.
 +
|}
 +
 
 +
===Returns===
 +
[[Lua:Class:PopupMenu|PopupMenu]] — The created popup menu object.
 +
 
 +
== Properties ==
 +
 
 +
This class does not define additional properties.
 +
 
 +
Inherited properties are available through [[Lua:Class:Menu|Menu]], [[Lua:Class:Component|Component]], and [[Lua:Class:Object|Object]].
 +
 
 +
== Methods ==
 +
 
 +
This class does not define additional methods.
 +
 
 +
Inherited methods are available through [[Lua:Class:Menu|Menu]], [[Lua:Class:Component|Component]], and [[Lua:Class:Object|Object]].
 +
 
 +
== Examples ==
 +
 
 +
===Create a PopupMenu===
 +
<syntaxhighlight lang="lua" line highlight="2">
 +
local form = createForm(false)
 +
local popupMenu = createPopupMenu(form)
 +
 
 +
form.PopupMenu = popupMenu
 +
form.show()
 +
</syntaxhighlight>
 +
 
 +
===Add menu items to a PopupMenu===
 +
<syntaxhighlight lang="lua" line highlight="2,4">
 +
local form = createForm(false)
 +
local popupMenu = createPopupMenu(form)
 +
 
 +
local menuItem = createMenuItem(popupMenu)
 +
menuItem.Caption = "Say hello"
 +
menuItem.OnClick = function(sender)
 +
  print("Hello")
 +
end
 +
 
 +
popupMenu.Items.add(menuItem)
 +
 
 +
form.PopupMenu = popupMenu
 +
form.show()
 +
</syntaxhighlight>
 +
 
 +
===Use a PopupMenu as a form context menu===
 +
<syntaxhighlight lang="lua" line highlight="2,4">
 +
local form = createForm(false)
 +
local popupMenu = createPopupMenu(form)
 +
 
 +
local closeItem = createMenuItem(popupMenu)
 +
closeItem.Caption = "Close"
 +
closeItem.OnClick = function(sender)
 +
  form.close()
 +
end
 +
 
 +
popupMenu.Items.add(closeItem)
 +
 
 +
form.PopupMenu = popupMenu
 +
form.show()
 +
</syntaxhighlight>
 +
 
 +
===Assign a PopupMenu to a control===
 +
<syntaxhighlight lang="lua" line highlight="2,7">
 +
local form = createForm(false)
 +
local popupMenu = createPopupMenu(form)
 +
 
 +
local button = createButton(form)
 +
button.Caption = "Right-click me"
 +
 
 +
local menuItem = createMenuItem(popupMenu)
 +
menuItem.Caption = "Button action"
 +
menuItem.OnClick = function(sender)
 +
  print("Popup item clicked")
 +
end
 +
 
 +
popupMenu.Items.add(menuItem)
 +
button.PopupMenu = popupMenu
 +
 
 +
form.show()
 +
</syntaxhighlight>
 +
 
 +
===Create multiple context actions===
 +
<syntaxhighlight lang="lua" line highlight="2,4,18">
 +
local form = createForm(false)
 +
local popupMenu = createPopupMenu(form)
 +
 
 +
local copyItem = createMenuItem(popupMenu)
 +
copyItem.Caption = "Copy"
 +
copyItem.OnClick = function(sender)
 +
  print("Copy selected")
 +
end
 +
 
 +
popupMenu.Items.add(copyItem)
 +
 
 +
local pasteItem = createMenuItem(popupMenu)
 +
pasteItem.Caption = "Paste"
 +
pasteItem.OnClick = function(sender)
 +
  print("Paste selected")
 +
end
 +
 
 +
popupMenu.Items.add(pasteItem)
 +
 
 +
form.PopupMenu = popupMenu
 +
form.show()
 +
</syntaxhighlight>
 +
 
 +
===Create a PopupMenu for a memo===
 +
<syntaxhighlight lang="lua" line highlight="2,7,9,14">
 +
local form = createForm(false)
 +
local popupMenu = createPopupMenu(form)
 +
 
 +
local memo = createMemo(form)
 +
memo.Align = alClient
 +
 
 +
local clearItem = createMenuItem(popupMenu)
 +
clearItem.Caption = "Clear"
 +
clearItem.OnClick = function(sender)
 +
  memo.Lines.clear()
 +
end
 +
 
 +
popupMenu.Items.add(clearItem)
 +
memo.PopupMenu = popupMenu
  
=== Related Functions ===
+
form.show()
* [[Lua:createPopupMenu|createPopupMenu]]
+
</syntaxhighlight>
* [[Lua:createMainMenu|createMainMenu]]
 
* [[Lua:createMenuItem|createMenuItem]]
 
  
=== Related Classes ===
+
{{LuaSeeAlso}}
* [[Lua:Class:Menu|Menu]]
 
* [[Lua:Class:MenuItem|MenuItem]]
 
* [[Lua:Class:MainMenu|MainMenu]]
 
* [[Lua:Class:Form|Form]]
 
* [[Lua:Class:Control|Control]]
 
* [[Lua:Class:Component|Component]]
 
* [[Lua:Class:WinControl|WinControl]]
 

Latest revision as of 00:42, 27 June 2026

{} Class

class PopupMenu : Menu

The PopupMenu class represents a context menu.

A popup menu is the menu that appears when showing the right-click context menu of a control. It can be created with createPopupMenu.

Inheritance[edit]

Class Inherits From Description
PopupMenu Menu Represents a context menu.
Menu Component Base class for menu objects.
Component Object Base class for components.
Object None Base class for Lua-exposed objects.

Creation[edit]

<> Lua API Reference

function createPopupMenu(owner) : PopupMenu

Creates a PopupMenu object.

Function Parameters[edit]

Parameter Type Description
owner Component The owner of the popup menu.

Returns[edit]

PopupMenu — The created popup menu object.

Properties[edit]

This class does not define additional properties.

Inherited properties are available through Menu, Component, and Object.

Methods[edit]

This class does not define additional methods.

Inherited methods are available through Menu, Component, and Object.

Examples[edit]

Create a PopupMenu[edit]

1 local form = createForm(false)
2 local popupMenu = createPopupMenu(form)
3 
4 form.PopupMenu = popupMenu
5 form.show()

Add menu items to a PopupMenu[edit]

 1 local form = createForm(false)
 2 local popupMenu = createPopupMenu(form)
 3 
 4 local menuItem = createMenuItem(popupMenu)
 5 menuItem.Caption = "Say hello"
 6 menuItem.OnClick = function(sender)
 7   print("Hello")
 8 end
 9 
10 popupMenu.Items.add(menuItem)
11 
12 form.PopupMenu = popupMenu
13 form.show()

Use a PopupMenu as a form context menu[edit]

 1 local form = createForm(false)
 2 local popupMenu = createPopupMenu(form)
 3 
 4 local closeItem = createMenuItem(popupMenu)
 5 closeItem.Caption = "Close"
 6 closeItem.OnClick = function(sender)
 7   form.close()
 8 end
 9 
10 popupMenu.Items.add(closeItem)
11 
12 form.PopupMenu = popupMenu
13 form.show()

Assign a PopupMenu to a control[edit]

 1 local form = createForm(false)
 2 local popupMenu = createPopupMenu(form)
 3 
 4 local button = createButton(form)
 5 button.Caption = "Right-click me"
 6 
 7 local menuItem = createMenuItem(popupMenu)
 8 menuItem.Caption = "Button action"
 9 menuItem.OnClick = function(sender)
10   print("Popup item clicked")
11 end
12 
13 popupMenu.Items.add(menuItem)
14 button.PopupMenu = popupMenu
15 
16 form.show()

Create multiple context actions[edit]

 1 local form = createForm(false)
 2 local popupMenu = createPopupMenu(form)
 3 
 4 local copyItem = createMenuItem(popupMenu)
 5 copyItem.Caption = "Copy"
 6 copyItem.OnClick = function(sender)
 7   print("Copy selected")
 8 end
 9 
10 popupMenu.Items.add(copyItem)
11 
12 local pasteItem = createMenuItem(popupMenu)
13 pasteItem.Caption = "Paste"
14 pasteItem.OnClick = function(sender)
15   print("Paste selected")
16 end
17 
18 popupMenu.Items.add(pasteItem)
19 
20 form.PopupMenu = popupMenu
21 form.show()

Create a PopupMenu for a memo[edit]

 1 local form = createForm(false)
 2 local popupMenu = createPopupMenu(form)
 3 
 4 local memo = createMemo(form)
 5 memo.Align = alClient
 6 
 7 local clearItem = createMenuItem(popupMenu)
 8 clearItem.Caption = "Clear"
 9 clearItem.OnClick = function(sender)
10   memo.Lines.clear()
11 end
12 
13 popupMenu.Items.add(clearItem)
14 memo.PopupMenu = popupMenu
15 
16 form.show()

Main Pages

Core Lua documentation entry points

Lua
Script Engine