在CDialog::OnInitDialog设置DEFAULT-BUTTON的注意事项

如果你的Dialog是在资源编辑器里面创建的,那么你首先要去资源编辑器把对应的Button的Default Button选项设置为True

另外,如果你使用GotoDlgCtrl,那么记得OnInitDialog必须返回FALSE,详见OnInitDialog的文档:

If OnInitDialogreturns nonzero, Windows sets the input focus to the default location, the first control in the dialog box.

参考:https://msdn.microsoft.com/en-us/library/fwz35s59.aspx

另外,不要使用SetFocus,见:http://blogs.msdn.com/b/oldnewthing/archive/2004/08/02/205624.aspx

时间: 2024-11-04 22:17:55

在CDialog::OnInitDialog设置DEFAULT-BUTTON的注意事项的相关文章

mysql中单表多timestamp设置default问题

mysql中,同一个表多个timesatmp字段设置default的时候,经常会报错. 一个表只能有一个设置default的字段. 但是有时只有一个字段设置default也会报错. 会报:Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause 但是检查代码,发现只有一个timestamp设置了default. C

Swift开发教程--设置圆角Button和圆角边框TextView

设置圆角Button button.layer.borderColor = UIColor.whiteColor().CGColor; button.layer.borderWidth = 2; button.layer.cornerRadius = 16; 设置圆角边框TextView inputTextView.layer.borderColor = UIColor(red: 60/255, green: 40/255, blue: 129/255, alpha: 1).CGColor; i

在高并发、高负载的情况下,如何给表添加字段并设置DEFAULT值?

在高并发.高负载的情况下,如何给表添加字段并设置DEFAULT值? 在Oracle 12c之前,当Oracle表数据量上亿时,对表执行“ALTER TABLE XXX ADD COLUMN_XX VARCHAR2(2) DEFAULT 'XXX';”操作时,效率及安全性是必须要考虑的因素.若直接执行,则会在该过程中给表加上6级表锁,也就是连查询都需要等待,这在生产库上是相当危险的操作.因为Oracle在执行上述操作过程中,不仅要更新数据字典,还会刷新全部的记录,并且会使得Undo表空间暴涨,所以

Android GridView中设置了Button以后就不能响应OnItemClick()

当我们在GridView或者ListView里面设置了Textiew的时候,假如我们不给Textiew设置onlick()的话,那么Gridiew的OnItemClick()就是可以执行的,但是当把TextView换成是Button的时候我们也不设置onClick()的话,GridView的OnItemClick()也是不能执行的,为什么呢,这说明Button和TextView内部事件方面有区别,去查看Button的源代码,代码很少就这么几句 public class Button extend

Myeclipse修改设置Default VM Arguments

打开Windows-> Preferences 然后选择右侧菜单的Java->Installed JREs 点击右侧的jdk,然后点击"Edit"按钮 Default VM Arguments文本框中输入:-Xms256m -Xmx512m -XX:PermSize=256m -XX:MaxPermSize=1024m,然后点击finish按钮即可 -Xms512m -Xmx1024m -XX:PermSize=512m -XX:MaxPermSize=1024m 修改My

20-Vue中props设置default的作用

已经解决:原以为default是传入的值不符合类型要求,之后默认的值.原来是没有任何值的时候默认的值 保证你需要用到该属性的时候不会为undefined 原文地址:https://www.cnblogs.com/Romantic-Blood/p/11186790.html

select 设置发送超时发送注意事项

//设置发送超时你只发送, 并发送足够多的数据以填满发送缓冲区, 接收端一直不接收.发送端一量满发送缓冲区就会阻塞, 如果你设置了发送超时, 超时到了它就会返回发送超时了. 在send(),recv()过程中有时由于网络状况等原因,收发不能预期进行,而设置收发超时控制: 在Linux下需要注意的是时间的控制结构是struct timeval而并不是某一整型数,以下是来自于网上一篇文章中的摘录,它是这样写的:int nNetTimeout=1000;//1秒,//设置发送超时setsockopt(

iOS项目开发实战——storyboard设置界面技巧与注意事项

在iOS开发中,使用Main.storyboard来设计界面是每一个iOS开发人员需要面对的问题,使用storyboard相比较Android中使用XML来设置布局,有优点也有缺陷,现在我们来谈谈storyboard的设计技巧. (1)直接使用鼠标右键可以直接缩放storyboard的缩放比例.当然你也可以用触摸板使用2根手指缩放. . (2)拖拽控件绑定到代码中,不一定要从设计界面的控件中进行拖拽,也可以直接从左侧的列表中拖拽,这样会更加清晰方便. . (3)如何添加修改超过一屏的控件.我们把

C++ 多线程编程总结

一.什么是多线程? 在计算机编程中,一个基本的概念就是同时对多个任务加以控制.许多程序设计问题都要求程序能够停下手头的工作,改为处理其他一些问题,再返回主进程.可以通过多种途径达到这个目的.最开始的时候,那些掌握机器低级语言的程序员编写一些"中断服务例程",主进程的暂停是通过硬件级的中断实现的.尽管这是一种有用的方法,但编出的程序很难移植,由此造成了另一类的代价高昂问题.中断对那些实时性很强的任务来说是很有必要的.但对于其他许多问题,只要求将问题划分进入独立运行的程序片断中,使整个程序