VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2886|回复: 15

窗体置顶的问题

[复制链接]

2

主题

7

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
发表于 2020-1-19 20:00:01 | 显示全部楼层 |阅读模式
母窗体有一个编辑控件TRichEdit,母窗体的FormStyle=fsStayOnTop,现在新加开一个子窗体(不是多文档窗体),要求这个窗体的始终在浮在母窗体之上,并且还不能是模式窗体。实际上就是类似在编辑窗体上打开TFindDialog窗体的效果。在C#中用下面代码就可实现:
Form dlgFind = new Form();
AddOwnedForm(dlgFind);
dlgFind.Show();
但不知在CBC中如何实现。
回复

使用道具 举报

0

主题

16

帖子

16.00

积分

新手上路

Rank: 1

积分
16.00
发表于 2020-1-27 15:45:01 | 显示全部楼层
自己搜索一下浮动窗体的代码就知道了,实际上置顶窗体可以多种方法,不过多数不是绝对的
回复

使用道具 举报

0

主题

3

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-2-4 23:45:01 | 显示全部楼层
设置form的formstyle为fsStayOnTop可以的!!
回复

使用道具 举报

2

主题

7

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
 楼主| 发表于 2020-3-11 12:45:01 | 显示全部楼层
“设置form的formstyle为fsStayOnTop可以的!!”

这种方法不行,默认form启动后,窗体是浮在母窗体之上,一旦form失去焦点或母窗体再获得焦点后后form就沉到母窗体之后了。
回复

使用道具 举报

0

主题

4

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
发表于 2020-3-13 20:30:02 | 显示全部楼层
重载Form的虚拟函数CreateParams,改变TCreateParams的成员WndParent  

class  TForm2  :  public  TForm  
{  
__published:        //  IDE-managed  Components  
private:            //  User  declarations  
protected:  
       virtual  void  __fastcall  CreateParams(TCreateParams  &  Param);  
public:             //  User  declarations  
       __fastcall  TForm2(TComponent*  Owner);  
};  

void  __fastcall  TForm2::CreateParams(TCreateParams  &  Param)  
{  
       //调用基类的函数  
       TForm::CreateParams(Param);  
       Param.ExStyle    |=  WS_EX_TOPMOST;   
       Param.WndParent  =  GetDesktopWindow();   
}
回复

使用道具 举报

0

主题

5

帖子

6.00

积分

新手上路

Rank: 1

积分
6.00
发表于 2020-3-16 17:30:02 | 显示全部楼层
mark
回复

使用道具 举报

2

主题

7

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
 楼主| 发表于 2020-4-14 07:30:01 | 显示全部楼层
to:cooler42
这个方法还是不行,其效果与TForm2->formstyle=fsStayOnTop相同,当母窗体为活动窗体时,子窗体还是不能浮在上面。
因为母窗体本身就是formstyle=fsStayOnTop
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-5-23 22:30:02 | 显示全部楼层
帮顶
回复

使用道具 举报

0

主题

11

帖子

9.00

积分

新手上路

Rank: 1

积分
9.00
发表于 2020-5-26 17:30:01 | 显示全部楼层
强烈鄙视母窗体与子窗体都是FormStyle=fsStayOnTop,影响其它软件的使用.干脆你自己开发个操作系统只运行你编写的程序得了.
回复

使用道具 举报

2

主题

7

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
 楼主| 发表于 2020-7-5 11:30:01 | 显示全部楼层
TO:光明之行者
你知道我要写的是什么吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表