NSIS,点击后如何在文本控件上保留标签?

时间:2013-06-25 14:13:17

标签: user-interface controls label nsis nsdialogs

我收到了这段代码,

nsDialogs::Create 1018
Pop $0

; Link
${NSD_CreateLabel} 292, 301, 71, 18 "click here!"
Pop $0
SetCtlColors $0 0x0000FF 0xFFFFFF ; Blue on white
${NSD_OnClick} $0 on_click_link

; Text area
nsDialogs::CreateControl /NOUNLOAD ${__NSD_Text_CLASS} ${DEFAULT_STYLES}|${WS_CLIPCHILDREN}|${WS_TABSTOP}|${ES_WANTRETURN}|${ES_MULTILINE} ${__NSD_Text_EXSTYLE} 5 220 660 115 ''
Pop $1
SendMessage $1 ${EM_SETREADONLY} 1 0
SetCtlColors $1 0x000000 0xFFFFFF ; Black on white
${NSD_SetText} $1 "A label(hyperlink) is put over this text area"

nsDialogs::Show

我把标签留在文本控件的顶部。 当我单击文本控件的文本区域时,标签消失。 有没有办法告诉标签留在文本控件上?

请帮忙!

1 个答案:

答案 0 :(得分:0)

尝试使用 SetWindowsPos 函数调用设置标签的Z顺序。

使用HWND_TOPMOST设置标签的最大Z顺序,这里是API:http://msdn.microsoft.com/en-us/library/windows/desktop/ms633545%28v=vs.85%29.aspx