Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2005.11.06;
Скачать: [xml.tar.bz2];

Вниз

версия 2.06   Найти похожие ветки 

 
BelchonokH   (2005-03-09 20:26) [40]

Скачал себе версию 2.07, всё бы ничего, только появилась туча вопросов!
1) Скачал KOLadd, собрал MCK, открыл проект с ActonList, пытаюсь собрать, выдает: Undeclared identifier TKOLActionList и показывает на строку
 TKOLActionList = PActionList;
 TKOLAction = PAction;
в MCKFakeClasses.inc ну и конечно не собирается :( Как это поправить?
2) Не происходит событий OnMouseEnter/OnMouseLeave для Panel, как их можно вызвать? (GRAPCTL_HOTTRACK не помогает)

2 Владимир Кладов: с  Shift и wParam для событий мыши СПАСИБО, глаза открыли!!!


 
ECM ©   (2005-03-09 20:43) [41]

BelchonokH   (09.03.05 20:26) [40]

TKOLActionList = PActionList;
TKOLAction = PAction;
в MCKFakeClasses.inc ну и конечно не собирается :( Как это поправить?


Только что отправил Кладову письмо:
Здравствуйте, Vladimir.

Обнаружил "проблемку" с ActionList в 2.07
Связана с переносом его в KOLAdd.

Могу предложить сл. решение:

[KOLAdd.pas]

добавить объявления:
 ...
 TKOLAction = PAction;
 ...
 TKOLActionList = PActionList;

[mirror.pas]

все строки содержащие:

 := "uses Windows, Messages, ShellAPI, KOL"
 
заменить на
 := "uses Windows, Messages, ShellAPI, KOL, KOLAdd"

 
У себя проверил - пока без замечаний...

Добавка KOLAdd в Uses - код не увеличит :)


 
BelchonokH   (2005-03-09 21:05) [42]

2 [17] Владимир Кладов   (07.03.05 20:34)

Я на счёт ГрупБокса, когда нём лежат граф.контролы, и используются темы оформления, рамка групбокса перечеркивает его Caption, в таком виде при нажатии на него, он превращается в кнопку, так же стирая все граф. контролы лежащие на нём!


 
fellix   (2005-03-09 22:09) [43]

> [39] dimaxx
"... не верь глазам своим" (Козьма Прутков)
Значит в файле тоже ошибка. Знаю, потому как у KOLadd 2.04 от 21 декабря размер порядка 30К, а у последнего больше 90К. Плюс дата - 5 марта. Плюс все "переносы" в нем присутствуют. Сказано же: "качается последняя".


 
thaddy   (2005-03-09 22:17) [44]

It is fabulous, as are the new incremental updates!
Thank you Vladimir!


 
BeZ   (2005-03-10 00:57) [45]

>+]KOL: добавлен набор графических контролов, с конструкторами-
>функциями: NewGraphLabel, NewWordWrapGraphLabel,
>NewGraphPaintBox, NewGraphCheckBox, NewGraphRadioBox,
>NewGraphButton, NewGraphEdit.

извините за тупость, но как этим пользоваться? это в MCK доступно или использовать на чистом КОЛ? и что вообще это дает? можно ли с помошью этого сделать кнопку с картинкой и отобразить ее в стиле ХР?


 
BelchonokH   (2005-03-10 07:10) [46]

2 BeZ [45]

Похоже сделать то можно и кнопку с картинкой и даже в KOL, а даёт оно см. [17]

2 Владимир Кладов

Остались две непонятныё вещи:
см. [40] 2)
и ещё одно, если файл KOLadd.pas был создан что бы уменьшить основной KOL.pas в размерах, то зачем его было отдельно выкладывать? может его лучше в архив КОЛ"а положить? тогда будешь точно уверен, что скачана нужная версия и искать его по сайту не придётся...


 
SPeller ©   (2005-03-10 07:24) [47]

BelchonokH   (10.03.05 7:10) [46]
может его лучше в архив КОЛ"а положить

Поддерживаю.


 
ECM ©   (2005-03-10 09:17) [48]

Я думаю все-таки сначала неплохо бы "привести в порядок"
графические контролы - пока все сыровато - (может быть еще
на паре версий) - а потом вместе c KOLAdd выложить полный архив


 
Владимир Кладов   (2005-03-10 16:34) [49]

правильнее с TAction так:

{$IFDEF KOL_MCK}
type
 TKOLAction = PAction;
 TKOLActionList = PActionList;
{$ENDIF}

- прямо в KOLadd;

в mirror.pas в декларацию TKOLAction добавляется функция AdditionalUnits и добавляет KOLadd. Это все штатные средства для добавления "своих" контролов.

Для групбокса да перечеркнут, подправлю, но в кнопку не превращается, не получилось так сделать. Примерчик может вышлете, минимально достаточный?

Кто-нибудь хочет предложить код, чтобы новые AutoSize рисовались правильно в дизайн-тайм, мне совсем этим неинтересно озадачиваться.


 
BelchonokH   (2005-03-10 22:09) [50]

Отправил примерчик письмом, Могу даже сказать, что ГрупБокс превращается скорее всего не в кнопку, а панель... хотя не знаю.
И всё таки вопрос, поскольку боюсь Вам письмом некогда будет отвечать, то спрошу тут ещё раз: OnMouseEnter/Leave для Панелей, то что их не происходит, это глюк текущей версии, или так всегда теперь будет?


 
ECM ©   (2005-03-11 11:02) [51]

Владимир Кладов   (10.03.05 16:34) [49]
в mirror.pas в декларацию TKOLAction добавляется функция AdditionalUnits и добавляет KOLadd.


Маленькое уточнение. Я бы добавил KOLAdd еще и в TKOLActionList.
(При пустом ActionList - будет выскакивать ошибка, хотя тут достаточно будет создать хотя бы один Action, но все-таки...)

 TKOLAction = class(TKOLObj)
 ...
 protected
   function  AdditionalUnits: String; override;
 ...

 TKOLActionList = class(TKOLObj)
 ...
 protected
   function  AdditionalUnits: String; override;
 ...

function TKOLAction.AdditionalUnits: String;
begin
 Result := ", KOLAdd";
end;

function TKOLActionList.AdditionalUnits: String;
begin
 Result := ", KOLAdd";
end;


 
Владимир Кладов   (2005-03-11 14:18) [52]

манифест нужен, даже если _XPSTYLES. Иначе смысл-то какой - граф. контролы будут в стиле ХР, а все остальное - ugly classic? :) А с манифестом все работает правильно.


 
Владимир Кладов   (2005-03-11 21:33) [53]

Вообще имеет смысл сделать глобальную переменную DoNotDrawGraphCtlsUsingXPStyles, чтобы даже при включенном стиле в опциях все равно можно было отключить XP-like-рисование. Применение тут такое: если манифест лежит отдельно, то это делается обычно для того, чтобы дать возможность юзеру удалить/переместить его куда-нибудь и прога снова стала выглядеть в классике несмотря на. Тогда прога могла бы определить наличие отсутствия манифеста в директории запуска и установить true в этой переменной например при запуске.

С групбоксом я немного поборолся все-таки даже для этого случая. Не будет превращаться в кнопку. (Вообще-то в API groupbox это как раз и есть кнопка, просто для XP-стилей пришлось убрать соответствующий флажок в стиле контрола, иначе слишком сильно фликал он, постоянно перерисовываясь даже при проведении мышью).


 
BelchonokH   (2005-03-11 21:52) [54]

А как же OnMouseEnter/Leave для Панелей, это будет исправлено или самому надо вертеться? (ну просто очень надо нать, а то у меня скины так на мышь реагируют)


 
thaddy   (2005-03-11 23:45) [55]

You can use the OnMouseMove event from the form on which the graphcontrols are and use the BoundsRect of the Graphcontrols to test if the mouse is in it. The BoundsRect is relative to the owning form or control. If you need a canvas, that would defeat the purpose of the graph controls:economize on resources!


 
Sniper17   (2005-03-12 01:17) [56]

почему-то у меня на метке перестал работать Wordwrap =(
т.е в дизайн-тайм он работает нормально, а в запущеном приложении не работает =(


 
Владимир Кладов   (2005-03-12 08:03) [57]

А как же OnMouseEnter/Leave для Панелей, это будет исправлено или самому надо вертеться? (ну просто очень надо нать, а то у меня скины так на
мышь реагируют)
пример? почему-то у меня работают


 
BelchonokH   (2005-03-12 09:58) [58]

Хм, то ли я так криво установил новую версию... Про метку я тоже уже писал, а вот у меня теперь и в дереве узлы не добавляются... наверное стоит плюнуть на всё и ждать более новую версию...


 
BelchonokH   (2005-03-12 21:29) [59]

2 [57] Владимир Кладов   (12.03.05 08:03)

Опс, извиняюсь! Действительно работают! Оказалось что просто перестало автоматом происходить событие OnPaint при OnMouseEnter/Leave, что как я понимаю очень хорошо! для данного случая пришлось принудительную перерисовку поставить.



Страницы: 1 2 вся ветка

Форум: "KOL";
Текущий архив: 2005.11.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.57 MB
Время: 0.041 c
8-1118519861
81Ton
2005-06-11 23:57
2005.11.06
Работа с MediaPlayer


3-1127296298
yk
2005-09-21 13:51
2005.11.06
Как сохранить запрос и сделать union с другим запросом


14-1129176535
Мазут Береговой
2005-10-13 08:08
2005.11.06
Амазонки таки были и есть!


2-1129128179
Fast2
2005-10-12 18:42
2005.11.06
Как запичать в таблицу данные типа Date?


9-1119607531
ABS
2005-06-24 14:05
2005.11.06
GLScene





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский