![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Ворох вопросов по API
Dib@zol © (2006-10-20 17:22:00)Здравствуйте, эксперты, поддержка вы моя и опора!
Сёдня у меня просто куча вопросов по Эй-Пи-Ай (aka API),
и все как на подбор сложные...
1) Как получить вокруг 'Static', те. метки на API-окне,
приподнятую рамку в 1 пкс. толщиной? DrawEdge и
Polyline не предлагать! Ну если тока на крайняк. Вот
как делать опущенную рамку я знаю, SS_SUNKEN. А вот
как приподнятую? Чё комбинировать в CreateWindow?
Или может сообщение какоенить этой метке слать? А
то я уже задалбался методом тыка пробовать Х(
2) Как в метке задавать цвет шрифта? в WM_SETFONT и в
структуре TLogFont нет такого параметра, как цвет!
3) Как правильно пользовать WM_CTLCOLORBTN? Я уже
пробовал писать в Result Create(Любой)Brush, но
чёта не пашет подскажите в чём проблема?
4) Вопрос по моему связанный с предыдущим: как
реализовать прозрачность фона 'Static'-метки?
Я догадываюсь что в ответ на WM_CTLCOLORSTATIC
надо устанавливать кисточку в HOLLOW_BRUSH или
там NULL_BRUSH, но КАК (см. вопр. №2)? TextOut
не предлагать! Мне нужен отдельный контрол, к
которому можно обратиться по его хэндлу.
5) Как в 'EDIT' - текстовом поле распознать нажатие
Enter'a? Причём незамедлительно? Ведь когда фокус
находится в текстовом поле, основной цикл оконных
сообщений простаивает, или ловит сообщения, которые
хэндлит только DefWindowProc. Точно не знаю чё он в
это время творит. Поэтому в него вставлять отлов
Энтера бессмысленно (если конечно его нажатие не
порождает сообщение "родителю"). Вобщем как ловить
Enter правильно?
6) А также меня доконал страшенный глюк с перерисовкой
окна в Windoz XP. У меня есть 2 системы: 98 и XP.
Но под 98-ой всё перерисовывается ништяк, а под XP
главное окно при своём создании получает клиентскую
область, закрашенную в виде картинки, которая была
на этом месте до появленния окна. Причём эта жуть
сохраняется даже если подвигать окно по десктопу.
А если случайно задвинуть часть окна за пределы
рабочего стола, то при возвращении его весь Region
окна, попавший за экран, закрашивается цветом
крайнего пикселя окна, включая и границу, и
заголовок!!! Как бороться с этой напастью?
Уф вроде всё. Помогите плз.
Anatoly Podgoretsky (2006-10-23 11:14:00) [1]
> А теперь пажалста соизволь ответить
Это еще почему, брысь в песочницу.
Anatoly Podgoretsky (2006-10-23 11:12:00) [2]
> Сёдня у меня просто куча вопросов по Эй-Пи-Ай (aka API),
Кроме бардака, в этой куче вопросов ничего хорошего не получится.
Один вопрос одна тема.
DVM (2006-10-23 10:46:00) [3]
> Dib@zol (20.10.06 17:22)
Все ответы на твои вопросы есть в MSDN.
1) см. MSDN
2)-5) Я бы переопределил оконную процедуру окна (SetWindowLong) и рисуй там хоть черта лысого в красную крапинку.
6) Неправильно указаны стили окна при создании или ошибка в обработчике WM_ERASEBKGND. А еще лучше код в студию.
Gero (2006-10-20 18:37:00) [4]А еще здесь: http://ln.com.ua/~openxs/articles/smart-questions-ru.html
Eraser (2006-10-20 18:33:00) [5]> Dib@zol
много разных полезных книг тут http://www.natahaus.ru/category/prog/page/2/
Gero (2006-10-20 18:16:00) [6]> [2] Dib@zol (20.10.06 17:33)
О, пришел наш бог, да-ка мы на тебя помолимся!
Ketmar (2006-10-20 17:49:00) [7]>[2] Dib@zol 20-Oct-2006, 17:33
>соизволь ответить
уже ответили.
>кинь ссылку на электроный вариант твоей книжечки.
гугль взорвали террористы?
Dib@zol (2006-10-20 17:33:00) [8]>> DVM
Чё типа знаю но не скажу? Ну-ну. А теперь пажалста соизволь ответить или хотя бы кинь ссылку на электроный вариант твоей книжечки.
DVM (2006-10-20 17:30:00) [9]Я знаю ответы на все твои вопросы, но вместо ответа советую взять книгу по Win32Api например Петзольда или книги Румянцева.