Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.04.2012, 20:58   #1
Smogg
Участник клуба
 
Регистрация: 14.06.2011
Сообщений: 1,138
По умолчанию многострочное поле ввода (Edit)

Размеры Edit, создаваемого через CreateWindow, могут быть любые, но текст идет только в одну строку и не переносится. При нажатии на Enter или Tab динамики брякают ошибку. В общем, работает, но как-то урезанно работает.

Как через API сделать адекватное поле для редакции текста?
Smogg вне форума Ответить с цитированием
Старый 10.04.2012, 21:26   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

стиль ES_MULTILINE задан?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 10.04.2012, 22:11   #3
Smogg
Участник клуба
 
Регистрация: 14.06.2011
Сообщений: 1,138
По умолчанию

Нет, скопипастил пример, а потом смотрел, что получилось.

В MSDNе потерялся среди его обилия воды и перекрестных ссылок) После вашей подсказки,понял, где был неправ.
Smogg вне форума Ответить с цитированием
Старый 10.04.2012, 22:14   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
В MSDNе потерялся среди его обилия воды и перекрестных ссылок)
интересно а почему я легко нахожу то что мне нужно на msdn?
http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
ну оттуда идем http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 10.04.2012, 22:45   #5
Smogg
Участник клуба
 
Регистрация: 14.06.2011
Сообщений: 1,138
По умолчанию

Ну, может потому, что для вас http://msdn.microsoft.com/en-us/libr...8VS.85%29.aspx - это описания совершенно различных стилей, в отличии от меня, кто не видит никакого смысла в таком избыточном количестве повторяющихся сущностей.

А это правда, что весь GUI Windows построен лишь из 7 элементов? О_о

Button, ComboBox, Edit, ListBox, MDIClient, ScrollBar, Static и все.
Smogg вне форума Ответить с цитированием
Старый 10.04.2012, 23:10   #6
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
А это правда, что весь GUI Windows построен лишь из 7 элементов? О_о

Button, ComboBox, Edit, ListBox, MDIClient, ScrollBar, Static и все.
это обычные контролы, вы не считали расширеных
+создание своих классов.
Цитата:
в отличии от меня, кто не видит никакого смысла в таком избыточном количестве повторяющихся сущностей.
если посмотреть внимательно, то одно это стили конкретно контрола эдит, а то что вы показали это общие оконные стили.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 10.04.2012, 23:50   #7
Smogg
Участник клуба
 
Регистрация: 14.06.2011
Сообщений: 1,138
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
это обычные контролы, вы не считали расширеных
+создание своих классов.
Расширенные, это которые внутрисистемные и их упоминают лишь для completeness?

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
если посмотреть внимательно, то одно это стили конкретно контрола эдит, а то что вы показали это общие оконные стили.
Это я не знал, что в зависимости от первого параметра, все следующие параметры могут иметь различные смыслы. Думал, что все параметры любой функции означают всегда одно и то же, вне зависимости не от чего...

Если уж такая пьянка... Еще вопрос про CreateWindow:

HWND WINAPI CreateWindow(
__in_opt LPCTSTR lpClassName,
__in_opt LPCTSTR lpWindowName,
__in DWORD dwStyle,
__in int x,
__in int y,
__in int nWidth,
__in int nHeight,
__in_opt HWND hWndParent,
__in_opt HMENU hMenu,
__in_opt HINSTANCE hInstance,
__in_opt LPVOID lpParam
);

что такое __in_opt HMENU hMenu и где найти/создать в VS хендл на меню?

Прочие параметры вроде стали понятны, кроме последнего, который можно оставить и на далекий потом, в силу его специфичности.

Да, и какие сообщения может принимать (а точнее реагировать на) этот Edit?

// перечитал и понял, что вопросы слишком примитивные и за них вполне можно послать в гугл.

Поэтому спрошу лучше где в сети есть нормальные сайты с исходниками?

Последний раз редактировалось Smogg; 10.04.2012 в 23:59.
Smogg вне форума Ответить с цитированием
Старый 11.04.2012, 00:05   #8
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
где Notifications это уведомления от Эдита(получаемые родителем через WM_COMMAND), Messages которые можно послать Эдиту для его настройки и тп(+общие сообщения тоже).
Цитата:
Расширенные, это которые внутрисистемные и их упоминают лишь для completeness?
это Common Controls которые.
+ еще RichEdit.
Цитата:
что такое __in_opt HMENU hMenu и где найти/создать в VS хендл на меню?
http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
Цитата:
кроме последнего, который можно оставить и на далекий потом, в силу его специфичности.
этот параметр оставлен для пользователя(программиста всмысле)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 12.04.2012, 10:07   #9
Smogg
Участник клуба
 
Регистрация: 14.06.2011
Сообщений: 1,138
По умолчанию

Мда... В конце концов стало понятно, что ничего не понятно.

Пошел читать Петцольда. Спасибо за интерес)
Smogg вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как передать фокус ввода в поле Edit Arassir Помощь студентам 14 11.07.2012 12:37
Select и поле ввода Anubys JavaScript, Ajax 4 11.10.2011 15:33
Многострочное поле в DBGrid-e Sergey2 БД в Delphi 3 13.03.2010 09:40
Как сделать запрет ввода букв в поле для ввода input zvezda_t PHP 1 27.12.2009 22:02
После ввода в поле по Enter нужно перейти на другое поле! •ScReam•™ Помощь студентам 2 16.06.2009 08:47