Вверх ↑
Этот топик читают: Гость
Ответов: 1926
Рейтинг: 172
#1: 2009-09-28 21:41:23 ЛС | профиль | цитата
Add(Image,3114801,189,147)
{
Left=15
Top=15
Width=205
Height=180
Color=15793151
Point(onMouseUp)
Point(Handle)
link(onClick,11742843:doMove,[(233,153)(233,181)(184,181)(184,209)])
link(onMouseUp,16762241:doMessage,[(243,160)(243,167)])
}
Add(MoveWindow,11742843,196,203)
{
link(Handle,3114801:Handle,[])
}
Add(Message,16762241,266,161)
{
}
При использовании MoveWindow событие onMouseUp не реагирует на отпускание левой кнопки мыши на картинке.
карма: 9
0
Ответов: 60
Рейтинг: 0
#2: 2009-09-28 21:50:51 ЛС | профиль | цитата
У меня реагирует,но только на клик
карма: 0

0
Разработчик
Ответов: 26151
Рейтинг: 2127
#3: 2009-09-28 22:04:33 ЛС | профиль | цитата
3042, это нажатие перехватывает MoveWindow
В таких случаях можно делать вот так


Add(Image,3114801,231,189)
{
Left=15
Top=15
Width=205
Height=180
Color=15793151
Point(onMouseUp)
Point(Handle)
Point(onMouseMove)
link(onClick,11742843:doMove,[(275,195)(275,172)(226,172)(226,251)])
link(onMouseUp,15974377:doWork1,[(333,202)])
link(onMouseMove,14197958:doEvent,[])
}
Add(MoveWindow,11742843,238,245)
{
link(Handle,3114801:Handle,[])
}
Add(Message,16762241,350,203)
{
}
Add(IndexToChanel,14197958,280,203)
{
Data=Integer(0)
link(onEvent1,15974377:doWork2,[])
}
Add(HubEx,15974377,329,203)
{
link(onEvent,16762241:doMessage,[])
}


3042, ты, вроде, не новичок, а вопросы задешь, как только начал работать. Об этом было писано и переписано. Бородатая эта фича уже
карма: 22

1
Голосовали:3042
Ответов: 1926
Рейтинг: 172
#4: 2009-09-29 08:11:42 ЛС | профиль | цитата
nesco писал(а):
Об этом было писано и переписано


Просто я не сталкивался раньше с этим и не видел, где это написано.
карма: 9
0
Разработчик
Ответов: 26151
Рейтинг: 2127
#5: 2009-09-29 08:45:44 ЛС | профиль | цитата
3042 писал(а):
и не видел, где это написано

А ты чего, не все новые темы форума просматирваешь, если так, то тогда, точно можно пропустить
карма: 22

0
Ответов: 1926
Рейтинг: 172
#6: 2009-09-29 21:36:06 ЛС | профиль | цитата
Хотелось бы узнать, каким образом можно определить данные для подачи на точку doViewStyle. Подаю 2, по идее, должно быть ScaleMin, но получается - ScaleMax...

Я глянул в pas и всё выяснил, но для новичков может быт непонятно, что

0= Center;
1= Stretch;
2= ScaleMax;
3= Mosaic;
4= None;
5= ScaleMin;

В справке не нашёл.
карма: 9
0
Разработчик
Ответов: 26151
Рейтинг: 2127
#7: 2009-09-29 21:41:39 ЛС | профиль | цитата
3042, а для тебя что новость, что такие свойства работают через индексы списка
карма: 22

0
Ответов: 1926
Рейтинг: 172
#8: 2009-09-30 07:20:41 ЛС | профиль | цитата
Не новость, и по индексу ScaleMin находится второй, о чём я и говорил. Но почему-то при подаче числа "2" получается совсем другой способ отображения.
карма: 9
1
Голосовали:nesco
Разработчик
Ответов: 26151
Рейтинг: 2127
#9: 2009-09-30 08:58:10 ЛС | профиль | цитата
Действительно, есть такое. Исправлено
карма: 22

0
Ответов: 1926
Рейтинг: 172
#10: 2009-09-30 19:18:12 ЛС | профиль | цитата
А компонент ImageLoader не берёт рисунки 3000*3000?
карма: 9
0
Разработчик
Ответов: 26151
Рейтинг: 2127
#11: 2009-09-30 19:48:25 ЛС | профиль | цитата
3042 писал(а):
А компонент ImageLoader не берёт рисунки 3000*3000?

Проверяли, у меня брал и больше, от памяти компа зависит
карма: 22

0
Ответов: 1926
Рейтинг: 172
#12: 2009-09-30 20:07:26 ЛС | профиль | цитата
У меня гиг. Этого разве не хватит для 3000*3000?
карма: 9
0
Разработчик
Ответов: 26151
Рейтинг: 2127
#13: 2009-09-30 21:57:30 ЛС | профиль | цитата
3042 писал(а):
Этого разве не хватит для 3000*3000?

А что, не грузит Вообще-то, этот компонент использует стандартный ActiveX Explorer-a. Понятия не имею, почему он глючит с такими картинками
карма: 22

0
Ответов: 1926
Рейтинг: 172
#14: 2009-10-01 08:29:55 ЛС | профиль | цитата
nesco, вообще-то дело не в этом компоненте. Просто я использую IC, куда поступает картинка после загрузки для обработки, а затем уже выдаю её на DoLoad компонента Image.

Это IC почему-то не принимает такую картинку.

if _IsBitmap(dt) then bmp.Assign(ToBitmap(dt));
_hi_OnEvent(onImage,bmp);

Вот этот код для картинок ~2000*3000 уже не работает. Почему?
карма: 9
0
Разработчик
Ответов: 26151
Рейтинг: 2127
#15: 2009-10-01 08:52:43 ЛС | профиль | цитата
3042 писал(а):
Почему?

Тут, видимо, функция Assign из KOL не понимает большого разрешения для создания буфера для картинки. Выход: писать это дело самому под структуру DIBBitmap, те, не таскать эту картинку туда-сюда, а работать с ее образом памяти по наикратчайшему пути, минуя различные ненужные преобразования
карма: 22

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