Delphi XE5中的ShowMessage缩短了

时间:2013-11-08 19:21:00

标签: windows delphi delphi-xe5

Delphi XE5中的

ShowMessage()缩短了文本。

这对我来说是新的,还是由于编码网址时编码的字符?我需要看到整件事。

我使用以下函数对我的网址进行编码:

function TConnector.EncodeUrl(aDecodedUrl: String): String;
begin
  result:= tIdUri.URLEncode(aDecodedUrl);
end;

然后我在这里打电话:

zEncodedUrl := Connector.EncodeUrl('http://' + Connector.Host + 'Node:' + edtPath.Text + '.GetObjectListDataAsJSON');

编辑:我在传递给ShowMessage时得到了这个:

screenshot

我应该注意,在调试并将鼠标放在zEncodedUrl变量上时,它会显示完整的内容。

1 个答案:

答案 0 :(得分:7)

这是Vista任务对话框的本机行为,至少在Delphi调用时。当您在Windows上调用ShowMessage时,Vista任务对话框就会被调用。它不会分割太长的行。如果您的文字包含空格,则会将其拆分。

一个简单的解决方法是调用好的MessageBox

MessageBox(Application.MainForm.Handle, PChar(Message), PChar(Caption), MB_OK);

您可能希望微调所有者HWND的选择,但您明白了。