【问题标题】:How to vertical align nsis text box如何垂直对齐nsis文本框
【发布时间】:2014-04-16 22:20:03
【问题描述】:

我想创建一个高度为 30 的文本框,它使用的文本字体为 11pt。 不知何故,文本总是出现在框的上部。我想为它实现垂直居中对齐。 有谁知道怎么做?

Function fnc_Directoryrequest_Create

  ; custom font definitions
  CreateFont $hCtl_Directoryrequest_Font1 "Calibri" "11" "400"

  nsDialogs::Create 1018
  Pop $hCtl_Directoryrequest
  ${If} $hCtl_Directoryrequest == error
    Abort
  ${EndIf}

  ${NSD_CreateText} 37u 42u 327 30 "C:\mySample\TestLocation\here"
  Pop $hCtl_Directoryrequest_DirRequest1_Txt
  SendMessage $hCtl_Directoryrequest_DirRequest1_Txt ${WM_SETFONT} $hCtl_Directoryrequest_Font1 0

  ${NSD_CreateButton} 253u 40u 35 30 "..."
  Pop $hCtl_Directoryrequest_DirRequest1_Btn
  SendMessage $hCtl_Directoryrequest_DirRequest1_Btn ${WM_SETFONT} $hCtl_Directoryrequest_Font1 0
  ${NSD_OnClick} $hCtl_Directoryrequest_DirRequest1_Btn fnc_hCtl_Directoryrequest_DirRequest1_Click

FunctionEnd

【问题讨论】:

    标签: nsis nsdialogs


    【解决方案1】:

    标准编辑控件没有垂直对齐style 并且 EM_SETRECT 仅适用于多行编辑控件。

    如果你真的认为这是你需要的东西,那么你唯一的选择就是编写一个可以创建自定义编辑控件的 NSIS 插件。

    我建议你只使用12u 作为高度和默认字体...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多