2009-05-21 5 views

ответ

0

скопировать: взять выделенный прямоугольник, создать новый образ такого размера, возьмите копию текущего изображения и поместите его на новый прямоугольник, компенсировано правого угла выбранного прямоугольника

0

короче там два способа существует

1) свой собственный буфер 2) общесистемный буфер

во втором случае использования необходимо использовать стандартный формат для хранения данных. прочитайте MSDN для получения дополнительной информации о буфере обмена Windows

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

0

Вот несколько глобальных точек, которые резко ускорят ваши проблемы, с которыми вы столкнетесь.

Попробуйте найти обратимую линию/резиновую ленту. чтобы сделать выбор на картинке. Попробуйте выполнить поиск LockBits в VB .NET, чтобы создать быстрый способ чтения и записи пикселей. Попробуйте изучить фоновый поток и сообщить о прогрессе. Для операций с пикселями, которые занимают много времени. Попробуйте сделать MDI. С достаточным количеством статусных баров, чтобы сообщить о статусе. Попробуйте выполнить сериализацию в xml/binary при сохранении файла проекта на диск (например, psd). Это также может быть полезно для создания функции отмены.

1
  1. Используйте общесистемный буфер, только в случае, если копия пользователя в одном экземпляре на приложение и вставить в другой, или если пользователь закрывает окно и вновь открыть его, он может вставить обратно данные.
  2. Наследовать все формы программы из базового класса, который реализует копию &.
  3. Для копирования (или вырезать), сериализуйте объект и поместите его в системный буфер обмена.
  4. Для пасты, прочитать системный буфер обмена и попытаться десериализации обратно к объекту формы (если бросок терпит неудачу, содержимое буфера обмена не является объектом вашего приложения)
  5. Перемещение позиции из слегка приклеить влево и влево (чтобы пользователь знал, что на чертеже имеется новая фигура)