Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 04.01.2020
Сообщений: 4
1

Считать безконечное количество текста из EditControl в vector<char> (что-бы без размеров)

07.01.2020, 17:43. Показов 1335. Ответов 6

Author24 — интернет-сервис помощи студентам
Слушайте, парни, такая штука:

Есть у меня диалоговое окно с кнопочкой и EditControl. Мне дали задание считать оттуда столько символов, сколько туда впишут. А вписать могут и 10000, и 100000 и тд. Так как мусорить програму динамическими и статичискими масивамы я не хочу подумал что можно записать в vector.

Теперь вопрос: как считать из EditControl в vector<char>? Я пробовал - ругаеться, ибо знаю только одну функцию считывания с EditControl -> GetDlgItemText(), только она мне не подходит потому-что там надо размер указывать. Помогите, пожалуйста.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.01.2020, 17:43
Ответы с готовыми решениями:

Добавление текста в EditControl
Как можно обновить EditControll, я в него хочу выводить ход выполнения программы. каждый раз текст...

Запись в vector<vector<char>>
Задача такова: Считать с нескольких разных файлов бинарным способом в vector&lt;vector&lt;char&gt;&gt; _data....

Изменение размеров child без изменения размеров parenta
Доброго дня всем! Прошу помощи, сама не догадалась как тут быть. Суть в следующем : есть таблица,...

Считать файл, и вывести только те предложения, что без двузначных чисел (доработать код)
короче пишу курсовик и в последнем задании реал не знаю как избежать такой дилеммы, в моем коде,...

6
Заблокирован
07.01.2020, 20:30 2
C++
1
std::vector<char> Data( GetWindowTextLengthA( GetDlgItem( hWnd, IDC_EDIT1) ) );
1
0 / 0 / 0
Регистрация: 04.01.2020
Сообщений: 4
07.01.2020, 23:01  [ТС] 3
Под каждым индексом в vector-е символ '\0', в отладке смотрел. Не записывает символы, только длина верная. Нужно что-бы именно символы записало в вектор. Можно как-то?
Миниатюры
Считать безконечное количество текста из EditControl в vector<char> (что-бы без размеров)   Считать безконечное количество текста из EditControl в vector<char> (что-бы без размеров)   Считать безконечное количество текста из EditControl в vector<char> (что-бы без размеров)  

0
фрилансер
5499 / 5095 / 1047
Регистрация: 11.10.2019
Сообщений: 13,346
08.01.2020, 10:07 4
Лучший ответ Сообщение было отмечено Vitalii2000 как решение

Решение

Vitalii2000, как-то так
C++
1
2
3
4
5
6
    std::vector<char> text;
    if(const int len=::GetWindowTextLengthA(::GetDlgItem(hWnd,IDC_EDIT1)))
    {
        text.resize(len+1,'\0');
        ::GetDlgItemTextA(hWnd,IDC_EDIT1,&text[0],text.size());
    }
1
0 / 0 / 0
Регистрация: 04.01.2020
Сообщений: 4
09.01.2020, 21:56  [ТС] 5
что за "::" перед GetWindowTextLengthA и GetDlgItem? Зачем они?
0
фрилансер
5499 / 5095 / 1047
Регистрация: 11.10.2019
Сообщений: 13,346
09.01.2020, 22:03 6
Vitalii2000, указание использовать имена из глобальной области видимости. Но это я больше по привычке, я обычно на MFC сижу, там много названий из винапи переопределено в классах. Можешь убрать этот оператор
1
0 / 0 / 0
Регистрация: 04.01.2020
Сообщений: 4
10.01.2020, 01:31  [ТС] 7
Спасибо, помогло)
0
10.01.2020, 01:31
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.01.2020, 01:31
Помогаю со студенческими работами здесь

Инициализация vector<char>
Добрый день. Подскажи те, как инициализировать vector&lt;char&gt; символами - буквами алфавита.

std::vector<char**>
Может конечно боян, но похожей темы я не нашел. И так в чем проблема... Пишу программу для...

Unsigned char to vector
{ vector&lt;byte&gt; resBuffer; unsigned char buffer; //string reply; ...

vector<char> to char*
Пример: вектор v, v.size()=59 char* key = new char; strlen(key)=72 почему? либо как...

Vector<unsigned char> в int
есть vector&lt;unsigned char&gt; размером 4 байта..и мне надо перевести их в 1 число типа int. т.е. типо...

Запихнуть в vector<int>, char?
Всем доброго времени суток! Вот решил написать программу, которая переводила бы число из...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru