2015-04-08 3 views
4

Я пишу программу в Delphi XE2. В какой-то момент моей программы пользователю будет представлен выходной текст, который я показываю через простой диалог «showmessage (« Текст интереса »).Позволяет пользователю выбирать текст в диалоговом окне ShowMessage

Я бы хотел, чтобы у пользователя была возможность скопировать и вставить этот текст, если захочет. Это вовсе не ключевая часть программы, но я знаю, что им может быть приятно, что это возможно.

В настоящий момент, насколько я вижу, невозможно выделить все или части текста из этого окна сообщений, что подводит меня к моему вопросу: есть ли способ сделать окно сообщения текст, выбираемый для пользователя, или мне нужно будет перейти к другим способам отображения текста, если я хочу эту функцию? Любая помощь будет принята с благодарностью.

+1

При нажатии или имитации Ctrl + C при появлении сообщения появляется копия заголовка сообщения, заголовка сообщения и кнопок. –

+1

Вы можете попробовать редактировать текст без редактирования без рамки. (И, таким образом, это не по умолчанию «этот тип окна сообщений» больше, вам нужно будет создать свой собственный.) – usr2564301

+0

Спасибо @RawN! Я знаю об этом, и это очень удобно, но я сомневаюсь, что мои пользователи узнают, что без googling ... Я мог бы добавить его как своего рода наконечник, но это кажется слишком большим. – MrKiloByte

ответ

5

Когда вы вызываете ShowMessage, отображается диалоговое окно системного сообщения. Этот диалог не поддерживает выделение отдельных частей текста. Тем не менее, диалоговое окно отвечает на CTRL + C, разместив все содержимое диалогового окна в буфере обмена.

Если у вас абсолютно должен быть выбор отдельных частей текста, вам необходимо создать диалог самостоятельно, используя элементы управления Delphi.

+0

Я действительно хочу, чтобы они могли выбирать отдельные части, чтобы я сам начал создавать диалог. Спасибо за ваш ответ! – MrKiloByte

+1

@MrKiloByte открыть Dialogs.pas и посмотреть, как он реализован в Delphi сегодня, сделать копию и изменить то, что вы хотите. Если вы сохраняете один и тот же интерфейс, вы можете заменить исходные диалоги –

+0

Спасибо @JensBorrisholt, я рассмотрю это! – MrKiloByte

Смежные вопросы