c++ - 如何聚焦或选择一个项目?

标签 c++ c winapi select

在 WinAPI 中选择按钮以使按钮或项目具有虚线指示的输入焦点的正确方法是什么?如果我只是设置焦点,则不会选择它。一个例子:我通过CB_SETSEL在组合框中选择了一个项目索引,如何选择完整的项目(虚线,蓝色背景)?

非常感谢!!

最佳答案

在对话框中,您应该使用 DM_SETDEFID使按钮成为默认按钮的消息。只需调用 SetFocus 即可将焦点置于按钮(“虚线”)上,但不会使其成为默认 按钮(通过按 操作的按钮)返回键)。例如,

SendMessage(hwndDlg, DM_SETDEFID, IDC_BUTTON, 0);

对于其他类型的控件,SetFocus 是您所需要的,例如:

SetFocus(GetDlgItem(hwndDlg, IDC_COMBO));

关于c++ - 如何聚焦或选择一个项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27237431/

相关文章:

c++ - 链表中的段错误

计算每加仑平均英里数

delphi - Delphi中MainForm的OnShow事件中的ExitProcess

C++ 连接 LPCTSTR

c++ - 非常慢的 ffmpeg/sws_scale() - 仅在重载时

c++ - 指针对象的指针变量的语法如何工作?

c - 使用 ESC 字符访问 GSM 03.38 扩展字符集

c++ - INPUT、INPUT_KEYBOARD、ip 未在此范围内声明

c - 为什么 64 位 Visual Studio C 中的 CreateWindow 在创建时会自行销毁?

c++ - 退出应用程序前关闭线程