簡體   English   中英

實施復制,剪切和粘貼

[英]Implementing copy, cut and paste

我想在我的繪圖程序中實現復制,剪切和粘貼(復制所選圖像的一部分)

我不知道怎么開始

有任何想法嗎?

  1. 使用系統范圍的剪貼板 ,以防萬一用戶在應用程序中的一個實例中復制並粘貼到另一個實例中,或者如果用戶關閉窗口並重新打開它,則他可以粘貼數據。
  2. 從實現復制和粘貼的基類繼承程序的所有形狀
  3. 對於復制 (或剪切),請序列化對象並將其放置在系統剪貼板中。
  4. 對於粘貼 ,請閱讀系統剪貼板,然后嘗試反序列化回形狀對象(如果投射失敗,則剪貼板內容不是您應用程序的對象)
  5. 粘貼形狀的位置稍微向左和向下移動(以使用戶知道圖形中存在新形狀)

看到這個...

http://www.wallpaperama.com/forums/javascript-copy-selected-text-box-select-all-highlight-text-form-copy-paste-t706.html

但對於Firefox它不起作用。 我也在尋找類似的東西。 將發布,如果我得到更多。

復制:選擇所選矩形,創建該尺寸的新圖像,復制當前圖像,然后將其放置在新矩形上,並偏移所選矩形的左上角

簡而言之,存在兩種方式

1)您自己的剪貼板2)系統范圍的剪貼板

在第二種情況下,必須使用標准格式存儲數據。 閱讀MSDN以獲取有關Windows剪貼板的更多信息

或者您可以維護兩個剪貼板-自己和系統。 然后在你的剪貼板可以存儲特定信息的應用程序和系統cliboard只圖像

以下是一些全球性問題,這些問題將極大地加快您將要面臨的問題。

嘗試搜索可逆線/橡皮筋。 在圖片中進行選擇。 嘗試在VB .NET中搜索LockBits,以創建一種讀寫像素的快速方法。 嘗試學習后台線程,並報告進度。 對於每個像素,操作需要很長時間。 嘗試制作一個MDI。 具有足夠的狀態欄以報告狀態。 將項目文件保存到磁盤時,請嘗試序列化為xml / binary(例如psd)。 這對於創建撤消功能也很方便。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM