HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2020
0805
はりおSendMessageによるボタンスタイルの変更をしたい2解決


はりお

リンク

2020/8/5(Wed) 22:47:08|NO.91131

お世話になります、また質問をよろしくお願い致します。


#uselib "user32.dll" #func SetWindowLong "SetWindowLongA" int,int,int button gosub "AAAAA",*aaa _stat = stat SetWindowLong objinfo(_stat , 2), -16, $50000003 | $1000 stop *aaa return

このようなスクリプトによって、ボタンが押されると押しっぱなしのボタンスタイルに変更出来ると
思うのですが、
これを命令により、起動したときから、既に押しっぱなしにしておく、また、
押してあるときに押されていない状態にする方法はありますか?

ボタンを押さずに解除、または、押しっぱなしの状態にしたいと思います。

ご指導よろしくお願い致します。



この記事に返信する


TOMATO

リンク

2020/8/5(Wed) 23:51:45|NO.91132

状態取得付き


#uselib "user32.dll" #func SetWindowLong "SetWindowLongA" int,int,int #cfunc GetWindowLong "GetWindowLongA" int,int #define BM_GETCHECK 0xF0 #define BM_SETCHECK 0xF1 #define BST_CHECKED 1 #define BST_INDETERMINATE 2 #define BST_UNCHECKED 0 #define BS_AUTOCHECKBOX 0x00000003 #define BS_PUSHLIKE 0x1000 button gosub "AAAAA", *aaa _stat = stat _hButton = objinfo( _stat, 2) // ボタンをプッシュタイプへ変更 SetWindowLong _hButton, -16, GetWindowLong( _hButton, -16) | BS_AUTOCHECKBOX | BS_PUSHLIKE // ボタンを押した状態に変更 sendmsg _hButton, BM_SETCHECK, BST_CHECKED, 0 stop *aaa // 現在の状態を取得 sendmsg _hButton, BM_GETCHECK, 0, 0 if ( stat == BST_UNCHECKED) { mes "押されてない!" }else{ mes "押しっぱなし!" } return



はりお

リンク

2020/8/8(Sat) 22:14:14|NO.91143

TOMATO さま

ありがとうございます、これで上手く行けそうです。

遅くなってしまいすみませんでした。



ONION software Copyright 1997-2023(c) All rights reserved.