У меня есть wxTextCtrl, и мне нужно поместить в него очень большую строку. (Как строка 15 МБ) Единственная проблема - это очень медленно. Вот что я делаю:
char * buff = ...
wxString data(buff, wxConvUTF8);
text->ChangeValue(data);
Однако это не узкое место. Это происходит, как только функция, в которой находится этот блок кода, возвращается. Все приложение зависает примерно на 30 секунд. Я попытался wxYield сразу после ChangeValue, и это приводит к тому, что первые несколько строк строки отображаются в элементе управления, но он все еще зависает после. Как я могу избежать этого?
Я должен подчеркнуть, что ChangeValue возвращается почти мгновенно. Задержка происходит после этого, вероятно, во внутренних обработчиках сообщений wxTextCtrl или что-то в этом роде.