-
Вопрос такой: если я, например, засуну диологовое окошко в ресурс программы, я могу обращатся к свойствам контроллов на форме через KOL, или только через WinAPI?
-
по-хорошему - нет. можно залезть через *опу и создать объект TControl хоть в стеке, задать ему хендл окна, и, возможно, что-нить еще. я однажды так делал, но потом отказался. не удобно через заднее место обращаться с контролами. тем более что не все операции получится проделать с таким объектом.
-
Я вот что подумал, написать собственный класс реализованный на "чистом" WinAPI, первые шаги в эту сторону сделаны, создана процедура в классе TMyForm, CreateForm которая создаёт, как не трудно догодатся, ничто иное как форму, внесено несколько свойств (Cursor, Font, Top, Left, Width, Height) и некоторые другие. Минус в том что надо (если писать класс так как я задумал) каждому элементу задавать "родителя" явно, но это я думаю решаемо, конечно не без вашей помощи.
P.S. Всё это я делаю не из-за того что KOL_CE "не катит", а из-за того что при использовании класса на WinAPI программа получается маленькой и быстрой, что при использовании KOL_CE достичь невозможно т.к. объём программы и потребляемые ею ресурсы растут с добовлением каждого нового элемента на форму. И ещё я бы даже сказал что моя идея будет не полноценный класс, а лишь некоторая обёртка API функций т.е. превращеание их в более удобный вид.
-
Хочешь маленькие размеры, пиши на Си. На KOLCE в любом случае размер будет больше на порядок. Хотя это тебе еще на ЧетыреПДА говорили ;) ))
-
Нет, я имел ввиду полностью отказатся от использования KOL_CE, и писать програмы на WinAPI. На WinAPI программы написанные на Free Pascal получаются маленькие (пустая форма "весит" 28,5 кб.), и размер не зависит от количества контроллов.
P.S. Ради интереса я скомпилировал два экзешника (простенький твикер, 8 твиков) соответственно на MSVC 2005 и на Lazarus & WinAPI, на Си программа получилась "весом" 12,2 кб., а на Паскале 32,4 кб., потребляемая оперативная память у обоих прог 18,8 кб.. Так что писать программы используя Lazarus & WinAPI имеет очень даже большой смысл, вот именно для этого я и решил создать WinAPI класс.
-
-
УДАЛЯЕМ !!
|