gpt4 book ai didi

winapi - 从win32按钮删除边框

转载 作者:行者123 更新时间:2023-12-03 19:59:33 25 4
gpt4 key购买 nike

我有一个在 Win32 应用程序的 WM_CREATE 函数中创建的按钮,代码如下:

hChangeWorldButton = CreateWindowEx(NULL,
"BUTTON",
"OK",
WS_CHILD | WS_VISIBLE | BS_FLAT | BS_BITMAP,
2,
2,
25,
25,
hWnd,
(HMENU)CHANGEWORLD_BUTTON,
GetModuleHandle(NULL),
NULL);
SendMessage(hChangeWorldButton, BM_SETIMAGE, (WPARAM)IMAGE_BITMAP, (LPARAM)worldBmp);

我希望按钮只显示图像。不是背景和边框。

我怎样才能做到这一点?我从 MSDN 尝试了许多不同的按钮样式但似乎没有什么适合我的需要。我正在考虑使用 BS_OWNERDRAW ,但这似乎有点矫枉过正。或者它是唯一的解决方案?

最后,当光标悬停在按钮上时,如何将光标更改为手?

最佳答案

没有可用的按钮样式可以产生您所追求的视觉表示。您将不得不选择 BS_OWNERDRAW这里。

作为替代方案,您可以使用 Static Control SS_NOTIFY 风格。静态控件允许您获得所需的视觉表示,SS_NOTIFY样式允许您响应鼠标输入。但是,您将无法实现键盘接口(interface)。

虽然我自己没有尝试过,但也可以通过使用 Command Link 来获得所需的效果。 ( BS_COMMANDLINK ),并将标题设置为空字符串。

关于winapi - 从win32按钮删除边框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20443608/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com