如何在 autohotkey 的列表视图框中分别列出正值和负值?

如何在 autohotkey 的列表视图框中分别列出正值和负值?

这是我的 AHK 脚本:

Gui, Add, Edit, x77 y15 w100 h30 vMyvar gEdit1 ;first edit box, there can be entered any value.
Gui, Add, Edit, x237 y15 w100 h30 vNewvar Disabled, %Newvar% ;second edit box it shows the result by multiplying the first edit box's value by 100.
Gui, Add, Edit, x72 y60 w100 h30 vMyv gEdit2  ;third edit box, there can be entered any value.
Gui, Add, Edit, x242 y60 w100 h30 vNewv Disabled, %Newv% ;fourth edit box it shows the result by multiplying the second edit box's value by 50

Gui, Add, Edit, x242 y110 w100 h30 vTotal Disabled  ;this edit box shows the total of %Newvar% and %Newv% i.e. second edit box and fourth edit box.

Gui, Add, ListView, x282 y200 w100 h300 , 100|50|total ;listview box which lists the values of first edit box and third edit box
Gui, Add, Button, x62 y120 w100 h30 gNext, NEXT  ;next botton which when pressed lists the values of first edit box and third edit box and also clears the second edit box and fourth edit box everytime it pressed.

Gui, Show, w473 h373, Untitled GUI
return

Edit1:
Gui, Submit, NoHide
NewVar := Myvar * 100
GuiControl,, Newvar, %Newvar%
gosub, SetTotal
return

Edit2:
Gui, Submit, NoHide
NewV := Myv * 50
GuiControl,, Newv, %Newv%
gosub, SetTotal
return

SetTotal:
Total := 0
if NewVar is number
    Total += NewVar
if Newv is number
    Total += Newv
GuiControl,, Total, %Total%
return

Next:
Gui, Submit, NoHide
LV_Insert(1,, Myvar, Myv, Total)
Newvar := ""
Newv := ""
Total := ""
GuiControl,, Newvar, %Newvar%
GuiControl,, Newv, %Newv%
GuiControl,, Total, %Total%
return

我想要在这个 GUI 中添加这些控件:

Gui, Add, ListView, x62 y170 w200 h300 , s no|100|50|total ; this listview box is for negative values and i added s no column also in it which should contain the serial no as the negative values are entered in this box.
Gui, Add, ListView, x282 y170 w200 h300 , s no|100|50|total ; same listview box for positive values.
Gui, Add, Text, x402 y20 w130 h20 , no of negative values 
Gui, Add, Text, x402 y50 w130 h20 , total of negative value
Gui, Add, Edit, x542 y20 w100 h20 , ;in this edit box i want that there should come only the total no of negative values. say there are 10 nagative values in negative listview box then it should contain only no 10
Gui, Add, Edit, x542 y50 w100 h20 , ; in this edit box i want that it should contain the total of all the negative values i.e. if the total of all 10 negative value is say 50000 then it should contain 50000.
GuiClose:
ExitApp

因为我想要两个列表视图框,其中第一个应该列出正值,另一个应该列出负值,因为总数(因为第三个编辑框显示 %Newvar% 和 %Newv% 的总数)是正数,所以它应该列在正值列表视图框中,总数是负数,所以它应该列在负值列表视图框中。此外,负值和正值列表视图框也应该有 s no(序列号)列。我又制作了两个编辑框,我希望其中应该显示负值的数量,另一个编辑框中应该显示所有负值的总数。

答案1

听起来你的程序的流程如下:

  • 在 GUI 1 中,用户输入项目,点击下一步,然后它们被添加到表中
  • 在 GUI 2 中,GUI 1 表中的项目被分类到表 A(正面)和表 B(负面)中

听起来您可能需要做的是进行以下调整:

  • 对于 GUI1,添加另一个按钮以继续到 GUI2。我们将其称为“继续”按钮。
  • 当按下“继续”按钮时...
  • 隐藏 GUI1
  • 循环遍历最终确定的 GUI1 表中的所有值
  • 对于每个值,根据其是负数还是正数,将其添加到 GUI2 表之一(或将写入该表的变量)中
  • 将所有数字处理到相应的表中后,显示 GUI2
  • 您需要重构上述代码,将 GUI2 变成第二个 GUI(如需使用多个 GUI,请参阅帮助文件 - 基本上您只需在所有命令前面添加 GUI 编号即可)

相关内容