Вверх ↑
Этот топик читают: Гость
Разработчик
Ответов: 26163
Рейтинг: 2127
#46: 2007-07-31 23:52:37 ЛС | профиль | цитата
Alexbootch, похоже, это глюк не StringTabl'a. Компоненту какой контекст для отрисовки дают, на том он исправно и отрисовывает. Дадут контекст парента, он и на нем и отрисует (что он и делает). Тут, похоже, метод LVCustomDraw в KOL'e глючит.
карма: 22

0
Ответов: 1891
Рейтинг: 110
#47: 2007-08-01 13:38:53 ЛС | профиль | цитата
nesco, писал(а):
Тут, похоже, метод LVCustomDraw в KOL'e глючит.


nesco, а исправить это нельзя?
карма: 0
%time%
0
Разработчик
Ответов: 26163
Рейтинг: 2127
#48: 2007-08-01 14:38:05 ЛС | профиль | цитата
Alexbootch, я пока не знаю, не получается, думать надо. Не понятно, с чем связана потеря контролом Handle а затем, уже как следствие, потеря контекста отрисовки. Я пробовал другой метод отрисовки, захватывая напрямую Handle контрола и его контекст, но песня та же -- ни с хр... начинает отрисовывать на родительском контексте.
карма: 22

0
Ответов: 5446
Рейтинг: 323
#49: 2007-08-29 05:06:09 ЛС | профиль | цитата
nesco, вопрос: почему при щелчке ПКМ на StringTable с непустым выделением событие onMouseUp не возникает? Половина ответа: зачем-то сделано выделение строки по щелчку ПКМ на ней (а не только левой), что и глушит событие.

Забавный факт: если сделать двойной клик ПКМ, то событие возникает!
карма: 1

0
Разработчик
Ответов: 26163
Рейтинг: 2127
#50: 2007-11-10 00:07:10 ЛС | профиль | цитата
iarspider, onMouseUP отрабатывает родитель, а не компонент, и почему он так работает надо бы спросить у "сильных мира сего"?

------------ Дoбавленo:


Alexbootch, ты в b167 больше табличный глюк не проверял? Он у меня куда-то самоустранился, хотя и был. Как я его только не мучал, исчез он куда-то.
карма: 22

0
Ответов: 1891
Рейтинг: 110
#51: 2007-11-10 01:02:44 ЛС | профиль | цитата
nesco, писал(а):
Alexbootch, ты в b167 больше табличный глюк не проверял? Он у меня куда-то самоустранился, хотя и был. Как я его только не мучал, исчез он куда-то.


Нет еще. Сейчас посмотрю

[size=-2]------ Добавлено в 01:02
Блин, а у меня все по-старому
карма: 0
%time%
0
Ответов: 9906
Рейтинг: 351
#52: 2007-11-10 01:14:42 ЛС | профиль | цитата
nesco, вы чего продолжаете выделываться-то
Я же постился уже здесь о том, что KOL не сумел сделать последний перехват для ListView.
Если сие непонятно было, так кто спросить-то не давал - не пойму...
А дальше - хучь в ухо мочись: сообщения направляются прежде всего в какой-то Билловский обработчик, а вовсе не в KOL с его мышачьими event-ами
И придут ли они вообще в KOL-овские обработчики - только Биллу и известно

карма: 9

0
Разработчик
Ответов: 26163
Рейтинг: 2127
#53: 2007-12-05 15:01:23 ЛС | профиль | цитата
Galkov, я ж не к тому. Интересный факт, что у меня этот глюк исчез. А вот с чем это связано, не знаю? Да и последний пост был на эту тему в августе. А то, что форум добавил его ноябрем к старому посту, я-то тут причем?

------------ Дoбавленo:


Alexbootch, я кое-чего поправил в отрисовке контекстов. На SVN лежит поправленная версия MT_555CB. Мне интересно, будет ли наблюдаться сейчас этот глюк? Боюсь, что не в "мышачьих event-ах" дело было.
карма: 22

0
Ответов: 9906
Рейтинг: 351
#54: 2007-12-05 15:27:11 ЛС | профиль | цитата
nesco писал(а):
Боюсь, что не в "мышачьих event-ах" дело было

nesco, у тебя с логикой-то все в порядке

1) оконная ф-я конкретного экземпляра ListView уходит в виндячие библиотеки: ты что, сам этого факта проверить не можешь
2) если сообщения (типа WM_MOUSEXXX) НЕ доходят (по внутренним соображениям Билла) до оконной ф-ии класса, то причем здесь все фиксинги в ней
карма: 9

0
Разработчик
Ответов: 26163
Рейтинг: 2127
#55: 2007-12-05 17:04:45 ЛС | профиль | цитата
Galkov писал(а):
если сообщения (типа WM_MOUSEXXX) НЕ доходят (по внутренним соображениям Билла) до оконной ф-ии класса, то причем здесь все фиксинги в ней

Да причем здесь мышь, когда срыв контекста происходил совсем по другим причинам. Там явный баг был из за переполнения GDI буфера, который проявился в другом месте -- точно также и точно на этой же функции сорвало контекст безо всякого движения мышью, и я нашел почему, после фиксинга, этот срыв пропал. Ну нельзя вот так делать, а я сделал.


FillRect(DC,cbRect,CreateSolidBrush(Color2RGB(Color)));
Мне почему-то показалось, что по завершению, функция должна освободить занятый ресурс, но этого не происходит.
Чем больше обращений, тем быстрее сорвет контекст.

------------ Дoбавленo:


Я совершенно не оспариваю твои утверждения по поводу "Билловского обработчика", вот почему и спросил -- пропал этот глюк, или не пропал? Чтобы знать это из-за отрисовки, или по твоему утверждению.
карма: 22

0
Ответов: 1891
Рейтинг: 110
#56: 2008-02-07 23:08:32 ЛС | профиль | цитата
nesco, подскажи, что надо сделать что бы в компоненте StringTableMT_500 включить режим мультистрочного отображения? Вроде ставлю TableWBreak=True, но строки не отображаются в указанном режиме, а пример, данный тобою на первой странице вставляет вместо StringTableMT_500 компонент StringTable, т.к. схемка была для StringTableMT_470
карма: 0
%time%
0
Разработчик
Ответов: 26163
Рейтинг: 2127
#57: 2008-02-08 01:43:48 ЛС | профиль | цитата
Для поддержки мультистрочности необходим поддержка режима ImageList'a, тк высота иконок определяет высоту строки. В начале строки, в таком случае, необходимо указать индекс любой иконки, например 0. Вот пример:


Add(MainForm,5895636,98,154)
{
Left=20
Top=105
link(onCreate,13771270:doEvent1,[])
}
Add(StringTableMT,6563718,350,175)
{
Left=10
Top=10
Width=360
Height=235
Columns=#1:1|1:2|1:3|
TableWBreak=0
ImgSize=48
AssignedIList=0
IconsCheck=[]
MiscIcons=[]
Icons=[]
}
Add(Hub,13771270,154,168)
{
OutCount=3
link(onEvent1,185516:doClear,[(233,174)(233,132)])
link(onEvent2,4451295:doData,[])
link(onEvent3,4706486:doClear,[(254,188)(254,132)])
}
Add(Memory,185516,280,119)
{
Default=String(rty rdydrydrtyer ryeryeryer rtdrterer)
}
Add(DoData,4451295,217,175)
{
Data=String(rey6tdr56dr5 rdt6erter rtdrter)
link(onEventData,12304123:doString,[])
}
Add(Memory,4706486,322,119)
{
Default=String(rty rdydrydrtyer ryeryeryer rtdrterer)
}
Add(FormatStr,12304123,280,175)
{
DataCount=3
Mask="0;%1;%2;%3"
link(onFString,6563718:doAdd,[])
link(Str1,185516:Value,[])
link(Str3,4706486:Value,[(300,163)(328,163)])
}

карма: 22

0
57
Сообщение
...
Прикрепленные файлы
(файлы не залиты)