Platforms to show: All Mac Windows Linux Cross-Platform
Required plugins for this example: MBS Win Plugin
Last modified Thu, 3rd Apr 2024.
You find this example project in your MBS Xojo Plugin download as a Xojo project file within the examples folder: /Win/Windows Displays
Download this example: Windows Displays.zip
Project "Windows Displays.xojo_binary_project"
Class App Inherits Application
Const kEditClear = "&Delete"
Const kFileQuit = "&Quit"
Const kFileQuitShortcut = ""
End Class
Class Window1 Inherits Window
Control List Inherits Listbox
ControlInstance List Inherits Listbox
End Control
EventHandler Sub Open()
Dim displays() As WindowsDisplayMBS = WindowsDisplayMBS.Displays
for each display as WindowsDisplayMBS in displays
List.AddRow "DeviceName", display.DeviceName
List.AddRow "DeviceInstanceID", display.DeviceInstanceID
list.AddRow ""
List.AddRow "Position", display.X.ToString + " x " + display.Y.ToString
List.AddRow "Size", display.Width.ToString + " x " + display.Height.ToString
List.AddRow "Primary", yes(display.Primary)
List.AddRow ""
List.AddRow "Logical Pixels X", Str(display.LogPixelsX)
List.AddRow "Logical Pixels Y", Str(display.LogPixelsY)
List.AddRow "Logical Position", display.LogX.ToString + " x " + display.LogY.ToString
List.AddRow "Logical Size", display.LogWidth.ToString + " x " + display.LogHeight.ToString
List.AddRow ""
List.AddRow "DisplayAdapterActive", yes(display.DisplayAdapterActive)
List.AddRow "DisplayAdapterDeviceID", display.DisplayAdapterDeviceID
List.AddRow "DisplayAdapterDeviceKey", display.DisplayAdapterDeviceKey
List.AddRow "DisplayAdapterDeviceName", display.DisplayAdapterDeviceName
List.AddRow "DisplayAdapterDeviceString", display.DisplayAdapterDeviceString
List.AddRow "DisplayAdapterRemovable", yes(display.DisplayAdapterRemovable)
List.AddRow "DisplayAdapterStateFlags", str(display.DisplayAdapterStateFlags)
list.AddRow ""
List.AddRow "DisplayMonitorActive", yes(display.DisplayMonitorActive)
List.AddRow "DisplayMonitorDeviceID", display.DisplayMonitorDeviceID
List.AddRow "DisplayMonitorDeviceKey", display.DisplayMonitorDeviceKey
List.AddRow "DisplayMonitorDeviceName", display.DisplayMonitorDeviceName
List.AddRow "DisplayMonitorDeviceString", display.DisplayMonitorDeviceString
List.AddRow "DisplayMonitorRemovable", yes(display.DisplayMonitorRemovable)
List.AddRow "DisplayMonitorStateFlags", str(display.DisplayMonitorStateFlags)
list.AddRow ""
List.AddRow "Monitor Position", display.MonitorX.ToString + " x " + display.MonitorY.ToString
List.AddRow "Monitor Size", display.MonitorWidth.ToString + " x " + display.MonitorHeight.ToString
list.AddRow ""
List.AddRow "Width DPI", Str(display.WidthDPI)
List.AddRow "Width Inch", Str(display.WidthInch)
List.AddRow "Width MM", Str(display.WidthMM)
List.AddRow "Height DPI", Str(display.HeightDPI)
List.AddRow "Height Inch", Str(display.HeightInch)
List.AddRow "Height MM", Str(display.HeightMM)
list.AddRow ""
next
// also list Xojo's screen
Dim c As Integer = DesktopDisplay.DisplayCount
For i As Integer = 0 To c-1
Dim d As DesktopDisplay = DesktopDisplay.DisplayAt(i)
List.AddRow "Xojo Screen", i.ToString
List.AddRow "Position", d.Left.ToString + " x " + d.Top.ToString
List.AddRow "Size", d.Width.ToString + " x " + d.Height.ToString
List.AddRow "ScaleFactor", d.ScaleFactor.ToString
list.AddRow ""
Next
End EventHandler
Private Function yes(b as Boolean) As string
if b then
Return "yes"
else
return "no"
end if
End Function
End Class
MenuBar MainMenuBar
MenuItem FileMenu = "&File"
MenuItem FileQuit = "#App.kFileQuit"
MenuItem EditMenu = "&Edit"
MenuItem EditUndo = "&Undo"
MenuItem EditSeparator1 = "-"
MenuItem EditCut = "Cu&t"
MenuItem EditCopy = "&Copy"
MenuItem EditPaste = "&Paste"
MenuItem EditClear = "#App.kEditClear"
MenuItem EditSeparator2 = "-"
MenuItem EditSelectAll = "Select &All"
End MenuBar
Sign
End Sign
End Project
See also:
- /Win/Windows DDE/List Excel Topics
- /Win/Windows Font Dialog
- /Win/Windows Key Filter
- /Win/Windows Locale Information
- /Win/Windows Monitors
- /Win/Windows Process Memory Info
- /Win/Windows QOS/Windows QOS with UDPSocket
- /Win/Windows Shortcuts/Create Shortcuts
- /Win/Windows Switch Printers for printing
- /Win/Windows Touch Events
Download this example: Windows Displays.zip
The items on this page are in the following plugins: MBS Win Plugin.