某个非pb的程序打开了n个窗口,请问怎么关闭其中的一个?请详细一点,谢谢拉。。100分问题

fireiory 2002-08-02 07:53:04
谢谢拉
...全文
49 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
banalman 2002-08-02
  • 打赏
  • 举报
回复
我认为在pb 中你可以将每一个打开的窗口,放在一个窗口数据组中,这样你可以控制,
顺便说一句,pb 中的应用向导可以生成 一个应用模板,里面的sheet管理器或许会给你以帮助。
ZHENG017 2002-08-02
  • 打赏
  • 举报
回复
function long FindWindowExA(long hparentwnd,long hchildwnd,ref string classname,ref string captionname) library "user32.dll"
long wndparent,wndchild,handleparent
string classname,captionname
SetNull(captionname)
SetNull(wndparent)
SetNull(wndchild)
classname="Afx:400000:8:10011:0:2033f"
handleparent=FindWindowExA(wndparent,wndchild,classname,captionname)
send(handleparent,16,0,0)
xirumin 2002-08-02
  • 打赏
  • 举报
回复
以上观点完全正确, 我就是用这种办法关闭了金山词霸, 因为它有时会把汉字翻译成英文
super_jack 2002-08-02
  • 打赏
  • 举报
回复
同意楼上,用API实现:Function ulong FindWindowA (String lpClassName , String lpWindowName) Library "user32.dll"
Icon 2002-08-02
  • 打赏
  • 举报
回复
Function ulong FindWindowA (String lpClassName , String lpWindowName) Library "user32.dll"
Function ulong CloseWindow (ulong hwnd ) Library "user32.dll"

long ll_Handler
string ls_Class
int li_rtn
setnull(ls_class)
ll_Handler = FindWindowA(ls_Class, "要关闭的窗体名称")

If ll_Handler <> 0 Then
send(ll_Handler, 16,0, 0)
End If
xiongxiao 2002-08-02
  • 打赏
  • 举报
回复
如你不知道你要关闭的窗口标题,你就没指望,如知道你就用楼上的方法.
WorldMobile 2002-08-02
  • 打赏
  • 举报
回复
用API函数,先用Findwindow找到你要关闭窗口的handle

然后再用close之类的函数即可

1,108

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧