社区
界面
帖子详情
VC里有没有这样的实现?
qybao
2004-04-08 05:48:38
在Delphi或VB等都有这样的事件,就是窗体刚好显示完时触发的事件,一般为form_active事件(不是form_load或form_create),请问vc里如何实现?我现在希望我的对话框刚好显示出来时做一些事情,因为在OnInitDialog()做会出错的,出错的原因很简单,就是窗体还没显示,希望高手指教,谢谢!
...全文
135
9
打赏
收藏
VC里有没有这样的实现?
在Delphi或VB等都有这样的事件,就是窗体刚好显示完时触发的事件,一般为form_active事件(不是form_load或form_create),请问vc里如何实现?我现在希望我的对话框刚好显示出来时做一些事情,因为在OnInitDialog()做会出错的,出错的原因很简单,就是窗体还没显示,希望高手指教,谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lsgt
2004-04-09
打赏
举报
回复
??
在OnInitDIalog里面取得子控件的RECT怎么会是无效的?
除非你在OnInitDialog里面的CDialog::OnInitDialog前面去取。
对话框的OnInitDialog必须执行基类的OnInitDialog,而这个基类的OnInitDialog恰好就要初始化所有的子控件。所以基类的OnInitDialog执行之后,所有的子控件都已经初始化完毕了。(除了那些你在之后动态Create出来的),那这时候访问子控件都没问题,因为子控件此时都已经被实例化而且初始化过了。
在OnPaint里面作也可以,只是凭空多用一个变量
在OnSize里头更不行了,OnSize第一次被调用的时候,所有的子控件根本没有创建。不过实在要在这里弄,也可以加上if(IsWindow(GetDlgItem(IDC_BUTTON))然后取值。这个方法我有用过,不过是在需要在OnSize里面调整子控件大小的时候。
checkyvc6
2004-04-09
打赏
举报
回复
我想得到对话框以及所有控件的rect,但如果在OnInitialDialog方法里,取出的结果都是0
this->GetWindowRect(rect);
那时肯定的了
YunLion(静静的想) 的方法虽然说有点别扭,但是我经常用,呵呵,现在还想不出其他的好办法
YunLion
2004-04-08
打赏
举报
回复
要不在OnPaint函数里面做这些看看。
void CMyDlg::OnPaint()
{
static bFirstTime=1;
if(bFirstTime)
{
.....
bFirstTime=0;
}
smallbull
2004-04-08
打赏
举报
回复
用OnInitDialog()应该不会出错,实际上这时候对话框已经显示了,你什么地方搞错了,检查一下。
qybao
2004-04-08
打赏
举报
回复
我想得到对话框以及所有控件的rect,但如果在OnInitialDialog方法里,取出的结果都是0
this->GetWindowRect(rect);
是不是还有什么其他的解决方法?
checkyvc6
2004-04-08
打赏
举报
回复
如果在对话框里面的话,用OnSize可以
zjg751206
2004-04-08
打赏
举报
回复
vc
也有onactive事件啊。你在类向导里看。估计楼主是要操作控件吧??
那么写在OnInitialDialog也可以。但是最好加上一个
if判断。因为句柄常常为空。
比如m_button为按钮的成员变量。那么可以加上
if(m_button)m_button.什么什么的就不会有错了。其实如果你写对了写在
OnInitialDialog是完全可以的。
szclm
2004-04-08
打赏
举报
回复
楼上说得对CDialog::OnInitialDialog()已经是所有控制初始后才运行的啦~
写出错误来看看~
lsgt
2004-04-08
打赏
举报
回复
OnInitDialog里头在CDialog::OnInitialDialog之后对话框已经建立了,所有的子控件也都已经可用,显不显示有什么关系?
技术
VC
=技术+
VC
?技术
VC
公司如何生存?
技术
VC
是什么?技术
vc
是不是技术+
VC
?技术
VC
公司是怎样来生存的?相信许多人对这些都会好奇。那么今天我们就来说说技术
VC
的那些事儿。
VC
,也就是风险投资的英文缩写。技术
VC
有别于资金
VC
,技术
VC
,顾名思义就是以技术入股的方式达成合作协议,创始人给出相应股份,投资者投入技术成为“技术合伙人”。互联网创业如火如荼地兴起,90%的创业者都不是技术出身,技术人员的招聘也很难把控,不懂技术却有迫切开发...
vc
实现
打印功能
Visual C++6.0是开发Windows应用程序的强大工具,但是要通过它
实现
程序的打印功能,一直是初学者的一个难点,经常有朋友询问如何在
VC
中
实现
打印功能,他们往往感到在MFC提供的框架内
实现
这个问题很复杂,不知道如何下手。本例针对这个问题,介绍一种简单的方法
实现
文字串的打印功能,读者朋友可以在此基础上稍微改动一下,就可以
实现
文件、图像的打印功能。 一、
实现
方法 在Win
VC
实现
界面多语言化
VC
实现
界面多语言化 几种常见的多语言化方法
VC
实现
多语言化有多种方法,下面简要介绍了几种方法并进行了比较。 方法1:为每个资源项(对话框、字符串、菜单等)创建一个或者多个副本,并将其内容更改为目标语言,并在程序启动时调用SetThreadLocale()函数设置语言环境,以后程序就会自动调用指定语言版本的资源了。如需从资源加载一个字符串,代码如下: CStrings;
在
VC
下
实现
串口通讯
最近有点时间,所以学习一下基于
VC
的串口通讯。 在
VC
下
实现
串口通讯有两种方法: 一种是直接使用 MSComm32 控件,这种方法比较简单,只需要之直接调用相应的控件类的接口就可以对串口进行操作。 另一种方法就是使用Windows的API接口,相对比较复杂。 再次就先介绍第一种方法,第二种方法等下次总结的时候在将它记下来。 NOTE:读者若需要完整的实例,可以到以下链接下载,
里
面含有具体的实例,以及
实现
所需功能要用到的几个文件 MSComm32.oc...
[转](荐)如何学习Visual Studio ?如何学习VC?如何C/C++?
(荐)如何学习Visual Studio ?如何学习VC?如何C/C++? 一、
VC
是什么?学
VC
是学什么? 首先
VC
是一个软件(IDE集成开发环境)(编译、编辑、调试) C和C++。但C++中的有些特性是不用的,例如I/O流,多态继承 WindowsSDK(软件开发工具)
VC
的灵魂:MFC(微软基础类库) ATL(ActiveX模板类库) 其他的SDK,如OpenGL,Dir
界面
15,978
社区成员
115,866
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章