社区
界面
帖子详情
100分提问:如何让一个对话框显示在所有对话框的上面?
iamwiner
2004-11-21 06:07:39
1.如何让一个对话框显示在所有对话框的上面?
例如:一个对话框程序,打开了几个子对话框(非模式的),如何让其中一个显示在其它的对话框的上面?
2.如何让一个对话框,只显示其中的文字?
例如:一个对话框程序,打开了一个子对话框,子对话框中,用OnPaint()函数输出了一段文字,如何隐藏这个对话框的其它部分?
注意是所有的其它部分,即除开文字之外的部分,使它看起来就像是在父对话框上用OnPaint() 函数输出一样!
大哥们:可以实现么?
...全文
223
15
打赏
收藏
100分提问:如何让一个对话框显示在所有对话框的上面?
1.如何让一个对话框显示在所有对话框的上面? 例如:一个对话框程序,打开了几个子对话框(非模式的),如何让其中一个显示在其它的对话框的上面? 2.如何让一个对话框,只显示其中的文字? 例如:一个对话框程序,打开了一个子对话框,子对话框中,用OnPaint()函数输出了一段文字,如何隐藏这个对话框的其它部分? 注意是所有的其它部分,即除开文字之外的部分,使它看起来就像是在父对话框上用OnPaint() 函数输出一样! 大哥们:可以实现么?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
oyljerry
2004-11-26
打赏
举报
回复
在OnCtlColor中设置背景色
oyljerry
2004-11-26
打赏
举报
回复
::SetWindowPos(hwnd,&this->wndTopMost,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
aoosang
2004-11-26
打赏
举报
回复
关注
mynamelj
2004-11-26
打赏
举报
回复
dialog.SetWindowPos(&this->wndTopMost,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
// SetWindowPos(hwnd,&this->wndTopMost,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
fallhunter
2004-11-25
打赏
举报
回复
1。
setwindowspos
第二个
还是不要这么做,那样毕竟是两个窗口,
如果用户在切换时,就穿帮了!
建议你在父框里动态创建透明子窗口,你可以自己写这个窗口类
Gabe
2004-11-25
打赏
举报
回复
HBRUSH CTextOutputDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CPropertyPage::OnCtlColor(pDC, pWnd, nCtlColor);
if(nCtlColor==CTLCOLOR_DLG || nCtlColor==CTLCOLOR_STATIC )
{
pDC->SetBkMode(TRANSPARENT);
HBRUSH b=(HBRUSH)GetStockObject(NULL_BRUSH);
return b;
}
return hbr
}
你把这个复制上去。要显示字的时候就更改STATIC上的字。不过我估计你这样做屏会闪的
Gabe
2004-11-25
打赏
举报
回复
不是和你说了用OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)这个函数了
OnPaint()是不行的
另: CProPageTransparent proPageTransparent;
hr = proPageTransparent.OnCtlColor(&pDC, this, CTLCOLOR_STATIC);
你这二句什么意思?
OnCtlColor()当然要用主对话框来调用 。
iamwiner
2004-11-22
打赏
举报
回复
TO:ChenGang521(^_^开心就好^_^(BOY))
我试了一下,好像不行啊!窗口的背景色还是有的!还是明显看得到窗口!怎么办啊?
我的OnPaint()函数是:
void CTextOutputDlg::OnPaint()
{
//CDialog::OnPaint();
CPaintDC pDC(this);
CBrush *br, *pOldBrush;
HBRUSH hr;
//pDC.SetBkMode(TRANSPARENT);
//pDC.TextOut(10,10,"afdfdasfkdjflkdlafjlas;");
CProPageTransparent proPageTransparent;
hr = proPageTransparent.OnCtlColor(&pDC, this, CTLCOLOR_STATIC);
br = CBrush::FromHandle(hr);
pOldBrush = pDC.SelectObject(br);
pDC.TextOut(10,10,"afdfdasfkdjflkdlafjlas;");
pDC.SelectObject(pOldBrush);
br->DeleteObject();
}
WorldMobile
2004-11-21
打赏
举报
回复
实现肯定没问题,一楼说的有道理
MuseIn
2004-11-21
打赏
举报
回复
up
volovo2002
2004-11-21
打赏
举报
回复
肯定是文件头没有包括进去啦,你查查MSDN的错误代码
iamwiner
2004-11-21
打赏
举报
回复
弱弱的问:调用SetWindowPos(&wndTopMost,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
的时候,VC怎么说wndTopMost undeclared identifier?
yanw0212
2004-11-21
打赏
举报
回复
你的窗口是从CWnd 继承的,可以直接调用
SetWindowPos(&wndTopMost,-1,-1,-1,-1,SWP_NOMOVE|SWP_NOSIZE);
第二个问题我不太清楚!
iamwiner
2004-11-21
打赏
举报
回复
TO:ChenGang521
非常感谢你的帮助!
等下我试一下!
是这样的:我想在全屏播放的FLASH上动态的显示一些文字.
我建了一个DIALOG对话框,上面放了一个CShockwaveFlash控件(安装FLASH时提供的,播放FLASH之用!)
然后全屏播放,开始,我用DIALOG的OnPaint()函数写文字,结果被FLASH挡住了,看不到!
我不知道怎么办了!就想到了上述的办法
但苦于我VC水平太差,有些东西实现不了!
你觉得这种方法可行吗?
或者你认为还有什么更好的方法吗?谢谢了!
Gabe
2004-11-21
打赏
举报
回复
1、SetWindowPos(&wndTopMost,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
2、把所有东西都做透明就行了
HBRUSH CProPageCH2::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CPropertyPage::OnCtlColor(pDC, pWnd, nCtlColor);
if(nCtlColor==CTLCOLOR_DLG || nCtlColor==CTLCOLOR_STATIC )
{
pDC->SetBkMode(TRANSPARENT);
HBRUSH b=(HBRUSH)GetStockObject(NULL_BRUSH);
return b;
}
return hbr
}
为何要这样做?第2个问题
代码语法错误
分
析工具pclint8.0
new),其中最后
一个
选项是operator new,那么在operator和new中间只能有
一个
空 格。 选项还可以放在宏定义中,例如: #define DIVZERO(x) /*lint -save -e54 */ ((x) /o) /*lint -restore */ LINT的选项很多...
windows理论知识
对话框
操作包括单选式
对话框
、复选式
对话框
、按钮式
对话框
、文本框式
对话框
、标签或选项卡、下拉列表式
对话框
、旋转式
对话框
、
提问
式
对话框
等。 八、文件操作 文件操作是 Windows 2000 中的
一个
主要任务。文件是...
WeLive免费在线客服系统 v3.2.0 商业版 破解版 特别版V1.0
在其它编程语言(如ASP)编写的网页文件中均调用
显示
客服小面板, 参考以上说明或访问闻泰论坛
提问
. 2. 直接在页面中插入客服图片(固定): ------------------------------------ 在需要
显示
WeLive在线客服系统...
Bootstrap modal 多弹窗之叠加关闭阴影遮罩问题的解决方法
Bootstrap模态框(Modal)是前端开发中常用的
一个
组件,它允许在页面上弹出
一个
交互式的
对话框
,常用于用户确认操作、填写表单或
显示
详细信息等场景。然而,在处理多层模态框(多弹窗叠加)时,可能会遇到一些问题,...
MyEclipse去除网上复制下来的代码带有的行号(正则去除行号)
因此,这个正则表达式将匹配所有以任意数量的空白字符开头,随后是
一个
或多个数字,然后是
一个
点的行。 在MyEclipse中,你可以通过以下步骤使用此正则表达式去除行号: 1. 打开你含有行号的代码文件。 2. 按下...
界面
15,978
社区成员
115,866
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章