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

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

Компоненты на api (или еще как-нибудь) [D7, WinXP]


Страницы:   1 2

Дмитрий_177 ©   (2006-02-01 20:47:00) 

Написал я несколько своих компонентов, еще давно, но теперь я изучаю программирование на чистом api, чтобы размер программы был небольшим, по сравнению с использованием VCL. Так вот вопрос в том, что как мне вставить те компоненты, которые я создал? Точнее даже не вставить, а переписать их чтоли... на api... такое вообще реально? если они используют обработку сообщений "CM_...", "WM_...". Или придется всетаки подключать модудь с компонентом и программа "поползет" в размере...?


Sergey Masloff   (2006-02-01 22:39:00) [21]

Дмитрий_177   (01.02.06 22:12) [17]
Собственно говоря, их даже не посылают а делают Perform() см. Forms.pas


Дмитрий_177   (2006-02-01 22:12:00) [22]

Я ловлю CM_MOUSEENTER при наведении курсора на компонент, CM_MOUSELEAVE когда курсор выходит за пределы компоненты и т.д. А вот посылать кто посылает эти сообщения, если честно не знаю...


Zeqfreed   (2006-02-01 22:11:00) [23]

Дмитрий_177   (01.02.06 22:03) [14]
У тебя в голове каша. Не нужно смешивать WinAPI и VCL. Считай, что VCL — это надстройка над WinAPI. Если пишешь программу на WinAPI, то не надо пытаться примешать туда VCL, используй стандартные механизмы, сообщение и все остальное. В MSDN это все довольно подробно описано, а так же есть множество примеров, на Delphi в том числе.


Sergey Masloff   (2006-02-01 22:08:00) [24]

Да отлавливать без проблем как и любое сообщение. А вот посылать кто их будет?


Дмитрий_177   (2006-02-01 22:03:00) [25]

А как тогда отлавливать сообщения CM...? они помоему Борландовские в VCL


Zeqfreed   (2006-02-01 21:53:00) [26]

Дмитрий_177   (01.02.06 21:44) [11]
Можно отрисовывать что угодно, как угодно и, практичеки, где угодно посредством API-функций.


begin...end   (2006-02-01 21:45:00) [27]

> А как же делают программы на api? как туда кнопочки вставляют,
> Edit-ы и другие компоненты?

Ресурсы


Дмитрий_177   (2006-02-01 21:44:00) [28]

Т.е. получается так, что на api можно сделать программу только со стандартными компонентами, включенные в windows? А если со своими компонентами(они для скинообразной формы) то придется включать в программу модули этих компонентов(они VCL)?


Zeqfreed   (2006-02-01 21:40:00) [29]

Список контролов с описаниями и примерами использования:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/commctls/wincontrols.asp


Gero   (2006-02-01 21:26:00) [30]

http://excode.ru/arttopic40.html?ex=611fc40ee631363a2e72402b24e41aee


Sergey Masloff   (2006-02-01 21:19:00) [31]

На всякий случай
BUTTON
COMBOBOX
EDIT
LISTBOX
RICHEDIT
RICHEDIT_CLASS
SCROLLBAR
STATIC
Это все предопределенные классы окон которые предоставляет Windows
Ну еще MDICLIENT но это отдельная песня


Sergey Masloff   (2006-02-01 21:16:00) [32]

То же самое.


Дмитрий_177   (2006-02-01 21:11:00) [33]

Хорошо.. а как тогда тотже ListBox?


Sergey Masloff   (2006-02-01 21:06:00) [34]

Дмитрий_177   (01.02.06 21:02) [4]
>т.к. при запуске программы она записывается в оперативную память, ведь так?
Нет

>А как же делают программы на api?
Ну кнопочки это всего лишь окна специального вида. Так что как обычно CreateWindow()....


Дмитрий_177   (2006-02-01 21:02:00) [35]

А вот по поводу размера: надо написать например будильник, который будет постоянно запущен на компе, чтобы он "прозвонил" вовремя ))) если exe будет например мегабайт занимать, я думаю что не очень как-то будет тратить мегабайт оперативки на какой-то будильник :) т.к. при запуске программы она записывается в оперативную память, ведь так?


Дмитрий_177   (2006-02-01 20:58:00) [36]

А как же делают программы на api? как туда кнопочки вставляют, Edit-ы и другие компоненты?


Rouse_   (2006-02-01 20:57:00) [37]

Вдогонку, а зачем размер то программы маленький? Сейчас век выделенок и жестких дисков по 200-300 гигобайт вроде как.
В мастера Демосцены без знания ассемблера тоже лезть не стоит...

ЗЫ: CM_... сообщений в АПИ нет...


Rouse_   (2006-02-01 20:54:00) [38]

Компонент и АПИ... хм... Мысль конечно замечательная, но применима только с точки зрения написания компонента (что есть правильно), но не для использования в приложении не опирающемся на VCL.

Похали-ка к начинающим :)


Страницы:   1 2

Наверх

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