MFC, отображающий несколько строк текста в окне редактирования - PullRequest
2 голосов
/ 19 января 2012

Я пытаюсь реализовать инструмент, который отображает имена файлов. Я хотел бы сделать это с помощью метода SetWindowText (). Тем не менее, когда я пытался использовать этот метод в цикле, текст отображается в одну строку и постоянно обновляется.

вот фрагмент кода

for (int i = 0; i<10; i++)
{
  SetWindowText(filenames);
}

пожалуйста, помогите.! спасибо.

Ответы [ 2 ]

9 голосов
/ 19 января 2012

SetWindowText заменяет текущий текст окна на указанную вами строку.
Итак, если вы хотите показать несколько строк с ним, вы должны сначала создать многострочную строку.

Быстрый пример:

CStringArray names;

// Fill names

CString str;
for (INT_PTR i = 0; i < names.GetCount() ; ++i)
{
    str += names[i] + _T("\r\n");
}

c_MyEdit.SetWindowText(str);
2 голосов
/ 13 мая 2013

Еще один проверенный временем метод отображения нескольких имен одновременно - это список. MFC предоставляет хорошую оболочку с классом CListBox (см. http://msdn.microsoft.com/en-us/library/y04ez4c9%28v=vs.80%29.aspx).. Это дает дополнительное преимущество, заключающееся в возможности прокрутки и (необязательно) сортировки, если список длинный.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...