【问题标题】:wxtooltip wxwidgetswxtooltip wxwidgets
【发布时间】:2011-11-02 07:26:46
【问题描述】:

我们在 C++ 中使用 wxWidgets 构建了一个应用程序,并使用 wxToolTips 在最终用户将鼠标指向应用程序上的某物时向其提供一些信息。但是我注意到工具提示会自动整齐地打包在 mac 中的新行中。但在 Windows 中,它是单行的,看起来不太吸引人。

在 mac 中:“这有助于你增加 \n 图像的亮度\n …………”

在 win 中:“这有助于你增加图像的亮度..........................”

谁能帮我解决这个问题?我不想使用换行符并将工具提示硬编码为多行

【问题讨论】:

    标签: c++ wxwidgets


    【解决方案1】:

    在 MSW 上有一个静态函数 wxToolTip::SetMaxWidth(int width) 可以设置宽度(以像素为单位)。根据文档,您必须在设置 wxToolTip 之前调用它。

    【讨论】:

    • 感谢 John,但我相信 SetMaxWidth 函数仅适用于 wxWidgets 2.8.10 及更高版本。我用的是 2.8.2。
    • 嗯...那么我认为您需要直接调用 Windows API 来设置最大宽度。在msw\tooltip.cpp 中,wxWidgets 2.9.2 使用SendTooltipMessage(GetToolTipCtrl(), TTM_SETMAXTIPWIDTH, wxUIntToPtr(maxWidth));,它变成了类似于::SendMessage((HWND)hwnd, msg, 0, (LPARAM)lParam) 的消息,所以如果你能抓住hwnd,这似乎只需做一点工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-18
    • 2011-12-04
    • 2013-07-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多