Форум программистов, компьютерный форум CyberForum.ru

C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
Aye Aye
367 / 281 / 36
Регистрация: 17.12.2009
Сообщений: 567
#1

Win32 API ввод текста в окно. - C++

19.12.2009, 19:12. Просмотров 1285. Ответов 0
Метки нет (Все метки)

помогите нсатроить правильгное стирание символа пожалуйста.
каретка текст затирает не равномерно при нажатии [backspace]. Слишком малое пространство закрашивается, хотя сама каретка переходит на правлеьное расстояние (ширина символа перед кореткой). Надо закрасить предыдущую букву, удалить её из массива считанных чисел, и поставить каретку до этого предыдущего символа.
плохо стирает.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
LONG APIENTRY WindowProcedure(HWND hwndMain, UINT uMsg, WPARAM wParam,LPARAM lParam)
//...
   case WM_CHAR:
                switch (wParam) {
         case 0x08: /*при нажатии [backspace] Г*Г* ñèìâîë Г*Г*Г§Г*Г¤ */
                HideCaret(hwndMain);
                hdc = GetDC(hwndMain);
                GetCharWidth32(hdc, (UINT) ch, (UINT) ch, &nCharWidth);
                ch=char(255);//пустой знак
                TextOut(hdc,
                    //вот тут вычиляю - начиная с какого места рисовать пустой знак.
                            nCaretPosX=nCaretPosX-nCharWidth, 
                            nCaretPosY * dwCharY, 
                            &ch, 1);
                SetCaretPos(nCaretPosX, nCaretPosY * dwCharY); 
                ShowCaret(hwndMain);
                ReleaseDC(hwndMain, hdc);
 
         /* очищаем буфер */
                pchInputBuf[cch] = ' ';
                cch--; //индекс буфера.               
                return 0;
//...
как сделать, чтобы закрашивался весь символ который коретка должна стереть?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2009, 19:12     Win32 API ввод текста в окно.
Посмотрите здесь:

Ввод текста в чужое окно C++ WinAPI
С++ Win32 API C++
Макросы, win32 API C++
C++ Не создается главное окно при запуске программы, Win32 API
Помогите создать окно с кнопками, графика win32 API C++
Книжки Win32 API на с++ C++
mdi в win32 api C++
C++ WinAPI Не создается дочернее окно WIN32 Api
Библиотека по Win32 API C++ WinAPI
C++ WinAPI Программа на win32 api с тулбаром и меню, окно не появляется
Текст в Win32 API C++ WinAPI
Вывод текста с прокруткой страниц Win32 API C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 10:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru