Autohotkey,如何显示可以覆盖孔屏的MsgBox

Autohotkey, how to display a MsgBox that could cover the hole screen

我有很多变量,我想在一个消息框中显示它们的值,我考虑过将它们放在列中以便它们适合,因为否则屏幕高度不足以显示它们,我的子例程像这样...

/::
Msgbox, varColummOne = %varColummOne% `tvarColummTwo = %varColummTwo%... `tnvarColummEight = %varColummEight%
. varColummOne = %varColummOne% `tvarColummTwo = %varColummTwo%... `tnvarColummEight = %varColummEight%
. varColummOne = %varColummOne% `tvarColummTwo = %varColummTwo%... `tnvarColummEight = %varColummEight%
. varColummOne = %varColummOne% `tvarColummTwo = %varColummTwo%... `tnvarColummEight = %varColummEight%

所以有 8 列的 34 行,这就是为什么我希望 msgbox 的宽度与屏幕的宽度相同。但是我注意到Msgbox的宽度有一定的像素限制。我该如何克服呢???任何解决方法?也许是一个图形用户界面?一些 AHK 专家可以举个例子吗???谢谢先进。

工具提示似乎没有这个限制。

这会在按下 / 时切换调试屏幕

var1=100
var2=101
var3=102
var4=103
/::
  show := !show
  ToolTip % show
    ?   "var1=" . var1 . "`tvar2=" . var2 . "`tvar3=" . var3 . "`tvar4=" . var4
    . "`nvar1=" . var1 . "`tvar2=" . var2 . "`tvar3=" . var3 . "`tvar4=" . var4
    . "`nvar1=" . var1 . "`tvar2=" . var2 . "`tvar3=" . var3 . "`tvar4=" . var4 : ""
  return

截图:

这会在按下 / 时切换 ListView window

/::
  global show := !show

  if !show
    Gui Alpha:Destroy
  else {
    Gui Alpha:New,,Debug
    Gui Add, ListView, r20 w700 -Hdr, 1|1|1|1|1|1|1
    LV_Add("", "row1col1", "row1col2", "row1col3", "row1col4", "row1col5")
    LV_Add("", "row2col1", "",         "row2col3", "row2col4", "row2col5")
    LV_ModifyCol()
    Gui show
  }
  return

截图

注释

  • LV_ModifyCol() 自动调整列的大小
  • -Hdr Gui Add 中的选项抑制 header 行
  • Alpha: 命名 window 所以 Gui Destroy 知道要销毁什么