2015-07-08 2 views
1

В настоящее время я работаю над кодом, который я унаследовал. Существует класс (я буду называть его logWindow), который наследуется от CDialog. В целом класс logWindow создает окно и выводит текст.Копирование текста с MFC CDialog

Что мне нужно сделать, это скопировать текст, который автоматически создается в окне.

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

У меня также есть рабочий код для другого окна журнала, написанного одним и тем же лицом. Этот код имеет класс (я буду называть его как copyList), который наследуется от CListbox. К сожалению, код плохо документирован или управляется, поэтому сложно определить, какие функции связаны с копированием текста и какие функции связаны с другими вещами, такими как автоматическая прокрутка.

Прошу прощения, если это очень неспецифично, из-за того, над чем я работаю, я ограничен тем, насколько могу опубликовать. Я уточню вопрос с такой же информацией, сколько смогу.

+0

Добро пожаловать в stackoverflow! В этом вопросе недостаточно информации, чтобы мы могли ответить. Пожалуйста, обратитесь к [запросить справку] (http://stackoverflow.com/help/how-to-ask) для руководства о том, как задать свой вопрос. –

+0

Поскольку у вас есть код, наверняка было бы лучше зацепить часть кода, добавляющего текст в окно. Если по какой-то причине вы не можете, определите, какой «контроль» в диалоговом окне получает текст ... вы должны иметь возможность читать его непосредственно из дочернего элемента диалога. – mark

+0

Даже с последним редактированием сложно ответить на специфику, поскольку данных недостаточно. Это может сказаться: почему вы думаете, что вам нужен слушатель мыши/kb? – mark

ответ

1

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

Вы сказали, что у вас уже есть пример CListBox, чтобы вы знали, как перебирать элементы.
, вы можете использовать эту ссылку Clipboard: Using the Windows Clipboard и проверить, как обращаться с буфером обмена.
вы также можете добавить простую кнопку «Отправить в буфер обмена», которая отправит текст в буфер обмена

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