Skip to content

Commit 05cff87

Browse files
committed
example:wowjump add flash window option.
1 parent c0c0aec commit 05cff87

File tree

7 files changed

+41
-11
lines changed

7 files changed

+41
-11
lines changed

examples/wowjump/config.go

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,19 @@ import (
1313

1414
// Config is program config.
1515
type Config struct {
16-
NormalTime int
17-
InputTime int
18-
CharWaitTime int
19-
EnterTime int
20-
ChangeChar bool
21-
editEnterTime *wingui.Edit `json:"-"`
22-
editNormaltime *wingui.Edit `json:"-"`
23-
editInputTime *wingui.Edit `json:"-"`
24-
editCharWaitTime *wingui.Edit `json:"-"`
25-
btnCheckChangeChar *wingui.Button `json:"-"`
16+
NormalTime int
17+
InputTime int
18+
CharWaitTime int
19+
EnterTime int
20+
ChangeChar bool
21+
LogoutFlash bool
22+
editEnterTime *wingui.Edit `json:"-"`
23+
editNormaltime *wingui.Edit `json:"-"`
24+
editInputTime *wingui.Edit `json:"-"`
25+
editCharWaitTime *wingui.Edit `json:"-"`
26+
btnCheckChangeChar *wingui.Button `json:"-"`
27+
btnCheckLogoutFlash *wingui.Button `json:"-"`
28+
flashHwnd win.HWND `json:"-"`
2629
}
2730

2831
var config = &Config{
@@ -56,6 +59,7 @@ func (c *Config) Save() {
5659
config.InputTime, _ = strconv.Atoi(c.editInputTime.Text())
5760
config.CharWaitTime, _ = strconv.Atoi(c.editCharWaitTime.Text())
5861
config.ChangeChar = c.btnCheckChangeChar.GetCheck() == win.BST_CHECKED
62+
config.LogoutFlash = c.btnCheckLogoutFlash.GetCheck() == win.BST_CHECKED
5963
file, _ := json.MarshalIndent(c, "", " ")
6064
configDir := os.Getenv("AppData")
6165
os.Mkdir(configDir+"/wowjump", 0777)
@@ -73,6 +77,11 @@ func (c *Config) InitVal() {
7377
state = win.BST_CHECKED
7478
}
7579
c.btnCheckChangeChar.SetCheck(state)
80+
state = win.BST_UNCHECKED
81+
if config.LogoutFlash {
82+
state = win.BST_CHECKED
83+
}
84+
c.btnCheckLogoutFlash.SetCheck(state)
7685
}
7786

7887
//EditEnable enable edits.
@@ -82,4 +91,5 @@ func (c *Config) EditEnable(enable bool) {
8291
c.editInputTime.SetEnabled(enable)
8392
c.editCharWaitTime.SetEnabled(enable)
8493
c.btnCheckChangeChar.SetEnabled(enable)
94+
c.btnCheckLogoutFlash.SetEnabled(enable)
8595
}

examples/wowjump/logout.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package main
22

33
import (
4+
"github.com/whtiehack/wingui/winapi"
45
"log"
56
"math/rand"
67
"strconv"
@@ -59,8 +60,19 @@ func (l *Logout) normal() {
5960
}
6061
}
6162

63+
func (l *Logout) checkFlashWindow() {
64+
if !config.LogoutFlash {
65+
return
66+
}
67+
log.Println("准备小退。。闪烁窗口..")
68+
for i := 0; i < 10; i++ {
69+
winapi.FlashWindow(config.flashHwnd, i%1+1)
70+
sleep(500)
71+
}
72+
}
6273
func (l *Logout) input() {
6374
if l.subTime == 0 {
75+
l.checkFlashWindow()
6476
if !l.TryGetWindow() {
6577
randomSleep(1111, 1111)
6678
}

examples/wowjump/main.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,10 @@ func main() {
6060
config.editInputTime = wingui.NewEdit(IDE_INPUT_TIME)
6161
config.editCharWaitTime = wingui.NewEdit(IDE_CHAR_WAIT_TIME)
6262
config.btnCheckChangeChar = wingui.NewButton(IDB_CHANGECHAR)
63+
config.btnCheckLogoutFlash = wingui.NewButton(IDB_LOGOUT_FLASH)
6364
_ = dlg.BindWidgets(editLog, btn, config.editNormaltime, config.editEnterTime,
64-
config.editInputTime, config.editCharWaitTime, config.btnCheckChangeChar)
65+
config.editInputTime, config.editCharWaitTime, config.btnCheckChangeChar, config.btnCheckLogoutFlash)
66+
config.flashHwnd = dlg.Handle()
6567
config.InitVal()
6668
go stat.Stat("/main", "wowjump-main")
6769
dlg.Show()

examples/wowjump/resource.h.go

Lines changed: 2 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

examples/wowjump/ui.syso

40 Bytes
Binary file not shown.

examples/wowjump/ui/resource.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,6 @@
1212
#define IDE_ENTER_TIME 40005
1313
#define IDS_WINGUI 40006
1414
#define IDB_CHANGECHAR 40007
15+
#define IDB_LOGOUT_FLASH 40008
16+
17+

examples/wowjump/ui/ui.rc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ FONT 8, "Ms Shell Dlg"
3636
EDITTEXT IDE_INPUT_TIME, 217, 187, 40, 12, ES_AUTOHSCROLL | ES_NUMBER, WS_EX_RIGHT
3737
EDITTEXT IDE_CHAR_WAIT_TIME, 77, 203, 40, 12, ES_AUTOHSCROLL | ES_NUMBER, WS_EX_RIGHT
3838
EDITTEXT IDE_ENTER_TIME, 217, 203, 40, 12, ES_AUTOHSCROLL | ES_NUMBER, WS_EX_RIGHT
39+
AUTOCHECKBOX "С��ǰ������˸", IDB_LOGOUT_FLASH, 102, 222, 72, 8, 0, WS_EX_LEFT
3940
}
4041

4142

0 commit comments

Comments
 (0)