【发布时间】:2015-10-23 12:43:07
【问题描述】:
我正在使用“Showmessage”(在 Win 7 中)显示文件的保存位置。 当文件路径很长时,它会被截断并插入省略号。 例如 路径
C:\Users\Admin\Documents\SubFolderOne\AnotherSubFolder\MyFile.csv
显示为
C:\Users\Admin\Documents\SubFolderOne\Ano...\MyFile.csv
有没有办法让消息框变宽并显示所有文件名和路径?
我读过这个 http://zarko-gajic.iz.hr/displaying-long-non-breakable-text-file-path-in-messagedlg-truncationellipsis-issues/ 这解释了一些推理并为 TTaskDialog 提供了一个相当不令人满意的方法,我也意识到我可以让自己的表单以与 Showmessage 相同的方式运行,但我想知道是否有一个更简单的解决方案只使用 Showmessage。
【问题讨论】:
-
把你的字符串分成几行,比如
Copy(s, 1, 32) + ' ... '#13 + Copy(s, 33, Length(s)) -
我猜可能。为了使它看起来整洁,虽然我必须在路径中找到适合消息窗口中一行的最后一个反斜杠并将其拆分在那里,但它仍然不会像单个文件名和路径那样读取跨度>
-
设计自己的表单而不是使用
ShowMessage;这种形式可以做任何你想做的事情。您可以创建自己的函数来接受字符串、创建表单并以您喜欢的任何方式显示字符串。 -
在此处查看关于 TTaskDialog 的出色答案:stackoverflow.com/questions/4979556/how-to-use-the-ttaskdialog