На Image выводиться изображение, при помощи стандартных методов Canvas.
Затем размеры Image меняются (причем размеры могут быть больше формы), все стирается и рисуется новая картинка. Проблема в том, что она рисуется только на область старого размера.
С PaintBox все вроде получаеться, но если окно моей программы свернуть или перекрыть другим окном, то рисунок исчезает. На Visual Basic эта проблема решалась путем установки AutoRedraw = true, а на Delphi я не нашел аналога. и еще я не знаю как рисунок из PaintBox сохранить в фаил.
Подскажите как изменить облость вывода у Image или как сделать, чтобы рисунок на PaintBox не исчезал.
Member
Статус: Не в сети Регистрация: 03.01.2004 Откуда: Питер
Vic-Tor рисуй на TBitMap и делай SaveToFile, обновление через onPaint
Цитата:
но каждый раз отрисовывать изображение немножко не проктично
отгадай с трех раз как происходит обновление изображения в TImage при перекрытии другими окнами
Цитата:
На слабых машинах будет немного тормозить.
не будет, правда это зависит от кривости рук программера... Добавлено спустя 1 минуту, 4 секунды ЗЫ в PaintBox можешь выводить этот битмап методом Canvas.Draw()
_________________ Здесь так мало тех, с кем легко говорить,
Еще меньше тех, с кем не страшно молчать (c)
Но зря ты про кривость рук говориш. Код уже конкретно оптимизирован, просто вычислений слишком много. А в Delphi я новичок, а из всей литературы есть только книга по Turbo Pascal да Help на инглише в котором я не очень шарю.
Member
Статус: Не в сети Регистрация: 03.01.2004 Откуда: Питер
Vic-Tor
Цитата:
Код уже конкретно оптимизирован, просто вычислений слишком много.
Так делай эти вычисления не в событии, а отдельной функцией, которую будешь вызывать по onPain, или есть еще вариант - если картинка меняется медленно, то хрании ее в битмапи и по onPaint просто делай Draw на канву PaintBox.
_________________ Здесь так мало тех, с кем легко говорить,
Еще меньше тех, с кем не страшно молчать (c)
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения