Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Ворох вопросов по 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 например Петзольда или книги Румянцева.


Наверх

Титульная страница Поиск, карта сайта Написать письмо