Forum Replies Created
-
AuthorPosts
-
MikeParticipant
Как-то так:
// uses acPNG;
PNGGraphic := TPNGGraphic.Create;
PNGGraphic.LoadFromStream(TFileStream или TMemoryStream);
sAlphaImageList1.Add(P, Nil);
PNGGraphic.Free;
January 4, 2012 at 7:01 am in reply to: AC 7.58 / ASkinDemo – Зависание приложения при клике на заголовок #47499MikeParticipant+1
Alt+перетаскивание или 3-й раз двойной щелчок на заголовке (max-norm-max форму) убивает приложение. И такое не только в демке. Нужон хотфикс, иначе глына 🙁
UPD: Проблема в AllowBlendOnMoving и AllowAnimation. Если включено хоть что-то в design-time – зависание.
UPD-2: В версии 6.61 проблемы нет, а в версии 7.1 – уже есть. Я фигею, сколько времени это никто не заметил 🙂
UPD-3: Дело в TacThreadedTimer'е. Класс TacTimerThread нужно переписать или же просто заменить его на обычный TTimer – тоже будет работать.
MikeParticipant'sambellamy' wrote:когда я щёлкаю мышкой по иконке в заголовке формы, должно приходить WM_NCLBUTTONDOWN с параметром HTSYSMENU, а его к сожалению нет.аналогично не приходит то же сообщение с HTCAPTION – невозможно отследить, когда щелкают по заголовку, где есть extended borders
MikeParticipantДолжен, но не бегал. Т.к. был косяк. Мой :a8:
Ложная тревога. Извините.
MikeParticipantЕсли я правильно понимаю, то вам нужно переопределить прямо в RunTime вот эти константы:
Code:acs_SelectDir := 'Укажите каталог';
//acs_Root тоже можно, если надо
acs_MsgDlgOK := 'OK';
acs_MsgDlgCancel := 'Отмена';
acs_Create := 'Создать';MikeParticipant'Support' wrote:Но, иначе, если кому-то нужно будет рисовать ячейку полностью и запретить дефолтное рисование – он не сможет этого сделать. Нужно будет подумать над этим.А если по схеме: OnBeforeDraw с параметром var SkinDraw : boolean, и в зависимости от рез-та – рисовать далее скин или нет. Если рисовать, то после скина идёт OnAfterDraw, где рисовать уже то, что поверх скина должно быть.
MikeParticipantСпасибо!
'Support' wrote:3. Разнести картинки возможно только для скинового режима, в стандартном режиме контрол рисуется системой…Да замечательно! Скиновый-то и нужен.
'Support' wrote:4. Пока что способа так делать нет. А в чем трудность полной отрисовки? Какой кусок остается нескинированным?Ячейка sub-item'а. Она рисуется системой, потом идёт мой обработчик, а скин уже никуда не идёт 🙂 По идее, было бы правильно, чтобы все события типа OnDraw (во всех скиновых контролах, если по смыслу не указано прямо, что обработчик идёт перед дефолтной отрисовкой) шли после того, как контрол отрисуется системой, потом (если надо) выведется скин, а только потом – пользовательский вывод текста, картинок и т.п. Ибо каждый раз, имея желание вывести картинку и текст, надо разруливать ситуацию и выводить кусок скина, который нужно где-то брать и т.п…
MikeParticipantЛюди, ахтунг! Компонент не сохраняет OnAdvancedCustomDrawItem!! Каждый раз при компиляции надо через инспектор заново сопоставлять событие уже готовой процедуре!
MikeParticipantТа же штука и с TsTreeView: не работает OnDrawItem. Спасает OnAdvancedCustomDrawItem. Однако в TsComboBox такого нет, поэтому приходится заменять на TComboBox.
Упс, в конце первого сообщения не увидел 🙂
MikeParticipantsTreeView – те же приколы.
Замена файла из комплекта 7.03 проблему решает (sTreeView). Посмотрите, что там в исходниках изменено.
MikeParticipantХотелось бы, чтобы html render имел больше возможностей: не только b, i и font, но и u, color и, главное, image <img src="style_emoticons//smile.gif” style=”vertical-align:middle” emoid=”:)” border=”0″ alt=”smile.gif” />
P.S. Я пока от ElPack'а их render использую, чтобы в listbox'е html выводить – оч. неудобно получается. Но render у них оч. продвинутый.
MikeParticipantВерсия АС последняя (6.45), Делфи – 7-я, Win XP SP3.
UPD2: дело было не в АС, хотя ошибка была в их модуле. Система вывода видео “жрала” хэндлы GDI и АС их, хэндлов, просто не хватало. Ложная тревога
MikeParticipantНашел madExcept. Отчет с него.
MikeParticipantQUOTE (Support @ Sep 8 2009, 09:41 AM) <{POST_SNAPBACK}>Спасибо за пример! Все равно сразу ошибку получить не удалось, но рисование формы в этой демке буду еще изучать.
После открытия демки не забудьте перещелкнуть ExtBorders в TrueMikeParticipantДа, конечно. Если демо запустить, то будет форма без заголовка. Как сейчас у меня. А если в SkinManager'е поставить ExtendedBorders = True, то вылетит ошибка.
P.S. Кстати, обратите внимание на белую полосу, которая видна вверху формы при resize.
AuthorPosts