![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
KOL+MCK 2.11
ECM © (2005-08-31 13:57:00)2Kladov
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1121117429&n=10
Все баги что обсуждались в этой ветке успешно перекочевали в 2.11
т.е. ситуация с
// TKOLActionList = PActionList;
// TKOLAction = PAction;
и Rpt()
не изменилась - после установки 2.10 + upd2.11 требуется "ручная правка"
... а жаль...:)
GMax (2005-09-12 22:43:00) [1]спасибо, по крайней мере в вышеописанном примере назначение Transparrent в OnCreateForm срабатывает - бага с listview исчезает.
а насовсем её поправить можно ? только за тем и держу дополнительную невидимую панель.
DoubleBuffer сильно ускоряет перерисовку контролов на KolTabControl, но добавляет мигание чёрным фоном во время enable\disable на XP с включенными темами :(
Vladimir Kladov (2005-09-12 19:27:00) [2]избавляйтесь от DoubleBuffered. Пробуйте назначить DoubleBuffered / Transparent уже после создания и первого показа, если без них так уже совсем нельзя.
GMax (2005-09-12 12:51:00) [3]проблема лежит здесь:
http://www.terraspace.ru/gmax/progs/lvbug.zip(19627 bytes)
если на правой панели поставить transparrent - всё работает как надо, если транспарент выключить, чекбокс включается и не выключается.
если в ImageList выключить Masked, то проблема исчезает, но невозможно в иконке учесть цвет фона, что и показано в примере.
а иконок нужно больше 2 штук, так что встроенные не пойдут.
P.S. напоминаю, "самое простое решение, сделать форму невидимой принудительно, пока она полностью не создастся" не работает :)
Vladimir Kladov (2005-09-09 16:10:00) [4]по последнему: не замечал таких проблем с list view, если использовать свои 2 иконки. К тому же это пойдет тогда и на win95 без IE4.
GMax (2005-09-09 10:31:00) [5]понял!
влияет на это DoubleBuffer для панели, на которой кнопка лежит
как только он включается - получаем дрожание.
или, что тоже самое, doublebuffer для groupbox.
причём это получается только для панелей. если отдельным контролам не ставить - всё нормально. с эти ещё как-то можно мириться, хотя очень не хочется.
только вот в другой программе Transparent имеется и избавиться от него никак нельзя, потому что KOLListView с включенными чекбоксами без транспарента глючит по-страшному, чекбоксы не стирает за собой. а с транспарентом - стирает(хотя должно бы быть наоборот). я об этом уже когда-то здесь писал, но не был услышан.
а форма везде и без того создаётся с visible=false, но толку - ноль, мерцает.
GMax (2005-09-09 09:51:00) [6]транспарента нет.
тестовая программа с одной формой и одной кнопкой.
зато в тексте KOL вижу:
---------------
property CreateVisible: Boolean read fCreateVisible write fCreateVisible;
{* False by default. If You want your form to be created visible
---------------
и вдруг
---------------
function _NewGraphCtl( AParent: PControl; ATabStop: Boolean ): PControl;
[...]
Result.fCreateVisible := TRUE;
---------------
а вот "False" там нигде нету.
Vladimir Kladov (2005-09-08 19:49:00) [7]посмотрите изменения между версиями в WinMerge.
Возможно, повлияло то, что было требование включить обработку событий на radiobox: иначе он не устанавливал в MCK-проекте значение выставленное в design-time. может еще что-то, мы ведь не знаем, что именно задействовано в вашей программе. конечно, самое простое решение, сделать форм уневидимой принудительно, пока она полностью не создастся. потому что некоторые контролы могут потребовать себе handle, при установке каких-то значений, а это приведет к созданию дескрипторов самой формы и всех контролов на ней. со всеми последствиями. еще поди и transparent где-то есть... хотя и не рекомендовано.
GMax (2005-09-08 17:06:00) [8]and where should I write it if I use MCK ?
thaddy (2005-09-08 14:42:00) [9]CreateVisible := false ?
GMax (2005-09-08 14:37:00) [10]и всё-таки, что так изменилось в версиях KOL с .05 до .11 ?
попробовал перекомпилировать другую прогу - та уменьшилась на 1.5к, но зато окно со всеми контролами создаётся гораздо медленнее и с диким дрожанием экрана, как будто программа жестоко борется за фокус с десктопом.
то есть похоже алгоритм такой:
фокус стоит на десктопе, создаётся окно, фокус переключается на него, потом обратно на десктоп.
потом создаётся первый контрол, фокус прыгает туда-сюда.
потом второй .... и т.д.
с этим как бороться ?
GMax (2005-09-01 23:36:00) [11]а что такого добавилось в KOL+MCK с версии 2.05 до 2.11, что размер кода увеличился на 4кб ?
на форме три кнопки(две из них bitbtn, одна button)
и календарик (mhmonthcalendar)
что подкрутить, чтобы вернуть обратно ?
ECM (2005-09-01 13:25:00) [12]ЗЫ.
[6] Опечатка - не KOLAdd а mckFakeClasses... :)
ECM (2005-09-01 12:05:00) [13]>В полном архиве 2.10 тем более все лежит уже давно.
О чем и речь! Все эти баги "лежат в полном архиве" (2.10) и апдейт 2.11 их не исправляет.
Я думаю эти баги (см. [0]) просче поправить именно в полном архиве (2.10), а апдейт 2.11 оставить как есть - он KOLAdd.pas
и mck*.inc не затрагивает...
Vladimir Kladov (2005-08-31 22:34:00) [14]В полном архиве 2.10 тем более все лежит уже давно.
ECM (2005-08-31 16:06:00) [15]не хватает фикса для mckfakeclasses, но я наверное туда же и положу, файлами.
кстати он лежит и в
http://bonanzas.rinet.ru/kol.zip(ИМХО тут он не нужен)
и в
http://bonanzas.rinet.ru/mck.zip
ECM (2005-08-31 15:33:00) [16]> исправления inc-файлов были положены прямо в upd 2.9->2.10
Ну и зачем...?
Зайдя на сайт человек увидит готовую версию 2.10 и ессессно ее качает затем глядит в обновления и видит 2.11 и то же качает...
Откуда он может "въехать" что надо обновляться с версии 2.9 ?
А при обновлении 2.10 (полный архив)+ upd 2.11 ВСЕописанные выше баги наличествуют...
хотя Вы и пишите что >отнюдь не все
Vladimir Kladov (2005-08-31 15:15:00) [17]отнюдь не все, исправления inc-файлов были положены прямо в upd 2.9->2.10, насколько припоминаю. Да там не хватает фикса для mckfakeclasses, но я наверное туда же и положу, файлами. Так проще будет. Люди которые ленивые чтобы сами поправить Rpt или ActioList закомментировать, они и с upd как оно работает разбираться не желают.
ECM (2005-08-31 14:27:00) [18]UPD-файл (266 байт) исправляющий эти "опечатки" в версии 2.11
http://ecm-soft.pisem.net/files/kolmck211postfix.zip