简体   繁体   English

在NSIS中,如何在运行时将onClick事件应用于对话框控件?

[英]In NSIS, how to apply a onClick event on a dialog control at runtime?

On this control, 在这个控制上

 CONTROL "link", 1002, STATIC, SS_LEFT | WS_CHILD | WS_VISIBLE | WS_GROUP, 5, 195, 45, 10 

In nsis, 在nsis中

!define MUI_UI "myUi.exe"
!define MUI_PAGE_CUSTOMFUNCTION_SHOW LicenseShow
!insertmacro MUI_PAGE_LICENSE "License.rtf"
...
Function LicenseShow
  ...

  ; Inner window
  FindWindow $0 "#32770" "" $HWNDPARENT

  ; Link
  GetDlgItem $1 $0 1002
  SetCtlColors $1 0x0000FF 0xFFFFFF ; This works
  ${NSD_SetText} $1 "Link to google" ; This works too
  ${NSD_OnClick} $1 on_click_link ; This does NOT work

  ...
FunctionEnd

Then, 然后,

Function on_click_link
    ExecShell "open" "http://www.google.com"
FunctionEnd

How can I add a onClick event on this 'Label' at runtime ? 如何在运行时在此“标签”上添加onClick事件 I don't want to use nsDialogs::Create 1018 et nsDialogs::Show for this. 我不想为此使用nsDialogs :: Create 1018nsDialogs :: Show

Any ideas ? 有任何想法吗 ?

NSD_On *回调仅适用于nsDialogs页面上的控件,请尝试使用ButtonEvent插件 ...

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM