精易论坛
标题:
输入框怎么根随在窗口中间
[打印本页]
作者:
q4567
时间:
前天 18:50
标题:
输入框怎么根随在窗口中间
输入框怎么根随在窗口中间
补充内容 (2025-6-18 18:50):
输入框怎么根随在主窗口中间
作者:
afu45
时间:
前天 18:53
子程序名
返回值类型
公开
备 注
__启动窗口_尺寸被改变
编辑框1.
移动
(
_启动窗口.
取用户区宽度
(
)
÷ 2 - 编辑框1.宽度 ÷ 2, _启动窗口.
取用户区高度
(
)
÷ 2 - 编辑框1.高度, ,
)
.版本 2
.子程序 __启动窗口_尺寸被改变
编辑框1.移动 (_启动窗口.取用户区宽度 () ÷ 2 - 编辑框1.宽度 ÷ 2, _启动窗口.取用户区高度 () ÷ 2 - 编辑框1.高度, , )
补充内容 (2025-6-18 18:54):
编辑框1.移动 (_启动窗口.取用户区宽度 () ÷ 2 - 编辑框1.宽度 ÷ 2, _启动窗口.取用户区高度 () ÷ 2 - 编辑框1.高度 ÷ 2, , )
作者:
LWB666
时间:
前天 19:22
输入框没办法跟随窗口, 只能自己新建一个窗口, 模仿输入框的样式, 然后载入窗口时设置它的位置(移动)
作者:
q4567
时间:
前天 19:25
afu45 发表于 2025-6-18 18:53
[e=0].版本 2
.子程序 __启动窗口_尺寸被改变
是输入框哦,不是编辑框
作者:
辉仔
时间:
前天 19:36
q4567 发表于 2025-6-18 19:25
是输入框哦,不是编辑框
你加点思路,新建个窗口不就行了?
作者:
帅气与大侠
时间:
昨天 00:23
源码下载:
对话框居中.e
(5.83 KB, 下载次数: 0)
昨天 00:23
上传
点击文件名下载附件
窗口程序集名
保 留
保 留
备 注
窗口程序集_启动窗口
子程序名
返回值类型
公开
备 注
_按钮1_被单击
变量名
类 型
静态
数组
备 注
返回文本
文本型
父窗口句柄
整数型
父窗口句柄 =
取窗口句柄
(
)
启动线程
(
&对话框居中过程, 父窗口句柄,
)
' 输入框
(
“提示”, “标题”, “初始文本”, 返回文本, , 父窗口句柄
)
' 信息框
(
123, 0, , 父窗口句柄
)
子程序名
返回值类型
公开
备 注
对话框居中过程
仅适用于系统预定义的#32770对话框
参数名
类 型
参考
可空
数组
备 注
父窗口句柄
整数型
填写对话框的父窗口句柄。
变量名
类 型
静态
数组
备 注
对话框句柄
整数型
父窗口矩形
整数型
4
父窗口矩形
对话框矩形
整数型
4
对话框矩形
对话框矩形
[
4
]
= 父窗口句柄
循环判断首
(
)
EnumWindows
(
&EnumChildProc,
取变量地址
(
对话框矩形
[
1
]
)
)
循环判断尾
(
对话框矩形
[
4
]
= 父窗口句柄
)
对话框句柄 = 对话框矩形
[
4
]
GetWindowRect
(
父窗口句柄,
取变量地址
(
父窗口矩形
[
1
]
)
)
GetWindowRect
(
对话框句柄,
取变量地址
(
对话框矩形
[
1
]
)
)
' 标准写法应该使用RECT结构,更易于阅读,用数组表示仅图方便。
对话框矩形
[
1
]
= 父窗口矩形
[
1
]
(
父窗口矩形
[
3
]
- 父窗口矩形
[
1
]
)
÷ 2
(
对话框矩形
[
3
]
- 对话框矩形
[
1
]
)
÷ 2
对话框矩形
[
2
]
= 父窗口矩形
[
2
]
(
父窗口矩形
[
4
]
- 父窗口矩形
[
2
]
)
÷ 2
(
对话框矩形
[
4
]
- 对话框矩形
[
2
]
)
÷ 2
SetWindowPos
(
对话框句柄, 0, 对话框矩形
[
1
]
, 对话框矩形
[
2
]
, 0, 0,
位或
(
1, 4, 512
)
)
子程序名
返回值类型
公开
备 注
EnumChildProc
整数型
参数名
类 型
参考
可空
数组
备 注
hwnd
整数型
lParam
整数型
' 如果父窗口句柄是指定的父窗口句柄,且窗口类名为#32770
如果真
(
GetParent
(
hwnd
)
=
指针到整数
(
lParam + 12
)
且
GetClassNameA
(
hwnd, lParam, 8
)
= 6
且
lstrcmpA
(
lParam,
“#32770”
)
= 0
)
写到内存
(
hwnd, lParam + 12,
)
hwnd = 0
返回
(
hwnd
)
i
支持库列表
支持库注释
EThread
多线程支持库
spec
特殊功能支持库
.版本 2
.支持库 EThread
.支持库 spec
.程序集 窗口程序集_启动窗口
.子程序 _按钮1_被单击
.局部变量 返回文本, 文本型
.局部变量 父窗口句柄, 整数型
父窗口句柄 = 取窗口句柄 ()
启动线程 (&对话框居中过程, 父窗口句柄, )
' 输入框 (“提示”, “标题”, “初始文本”, 返回文本, , 父窗口句柄)
' 信息框 (123, 0, , 父窗口句柄)
.子程序 对话框居中过程, , , 仅适用于系统预定义的#32770对话框
.参数 父窗口句柄, 整数型, , 填写对话框的父窗口句柄。
.局部变量 对话框句柄, 整数型
.局部变量 父窗口矩形, 整数型, , "4", 父窗口矩形
.局部变量 对话框矩形, 整数型, , "4", 对话框矩形
对话框矩形 [4] = 父窗口句柄
.循环判断首 ()
EnumWindows (&EnumChildProc, 取变量地址 (对话框矩形 [1]))
.循环判断尾 (对话框矩形 [4] = 父窗口句柄)
对话框句柄 = 对话框矩形 [4]
GetWindowRect (父窗口句柄, 取变量地址 (父窗口矩形 [1]))
GetWindowRect (对话框句柄, 取变量地址 (对话框矩形 [1]))
' 标准写法应该使用RECT结构,更易于阅读,用数组表示仅图方便。
对话框矩形 [1] = 父窗口矩形 [1] + (父窗口矩形 [3] - 父窗口矩形 [1]) ÷ 2 - (对话框矩形 [3] - 对话框矩形 [1]) ÷ 2
对话框矩形 [2] = 父窗口矩形 [2] + (父窗口矩形 [4] - 父窗口矩形 [2]) ÷ 2 - (对话框矩形 [4] - 对话框矩形 [2]) ÷ 2
SetWindowPos (对话框句柄, 0, 对话框矩形 [1], 对话框矩形 [2], 0, 0, 位或 (1, 4, 512))
.子程序 EnumChildProc, 整数型
.参数 hwnd, 整数型
.参数 lParam, 整数型
' 如果父窗口句柄是指定的父窗口句柄,且窗口类名为#32770
.如果真 (GetParent (hwnd) = 指针到整数 (lParam + 12) 且 GetClassNameA (hwnd, lParam, 8) = 6 且 lstrcmpA (lParam, “#32770”) = 0)
写到内存 (hwnd, lParam + 12, )
hwnd = 0
.如果真结束
返回 (hwnd)
作者:
走一回
时间:
昨天 11:03
输入框出现后,程序就暂停了,要确定后才会执行下面的代码,所以无法改变输入框的位置
作者:
w589321
时间:
昨天 16:52
弹出输入框前启动一个线程来检测是否出现输入框,然后调整位置。
欢迎光临 精易论坛 (https://bbs.125.la/)
Powered by Discuz! X3.4