2017-05-05 40 views
0

我有一個SysLink控件在Win32項目的對話框中。我試圖在其中顯示&字符。例如:顯示SysLink控件中的&字符

SetWindowText(hyperlink, _T("<a>https://www.stackoverflow/?a=1&b=2</a>")); 

hyperlink是句柄我SYSLINK控制。

問題是&沒有顯示在文本中。相反,我看到的是這樣的:

https://www.stackoverflow/?a=1b=2

我怎樣才能使這種控制顯示&符號?

+2

也許把它作爲'&&'換掉吧? –

+0

@DavidHeffernan工作,謝謝。你怎麼知道雙人&號? – Alexandru

+0

我不知道。我只知道! –

回答

2

您需要跳過&符號&&。否則它會被解釋爲表示加速器字符。

3

默認情況下,與號字符被解釋爲快捷鍵的前綴。如果您不希望SysLink控件解釋&字符,請在creating the SysLink control時通過LWS_NOPREFIXSysLink Control Style

雖然和號字符可以轉義(通過用另一個與符號字符作爲前綴),但它確實會更改控件內容。當SysLink控件呈現標記時,通常不打算這樣做。