يا سي عاطف ركز معي، صباعي تقشرت من كثر الكتابة :lol: :lol: :lol: أمزح فقط
النسخ يعني أنك تكتب في الclipboard، ليس أنك تقراه
واللصق أنك تقرى محتواه ثم تكتبه أين تريد، وفي حالتك في الJTextArea
الكود الذي أعطيتك مثال فقط على طريقة الإستعمال، لا تستعمله كما هو
وهذا مثال باستعمال JTextArea
import java.awt.event.*;
import java.awt.datatransfer.*;
import java.io.IOException;
import java.awt.Toolkit;
public class CopyExample {
JFrame frm = new JFrame();
JTextArea txtArea = new JTextArea();
JMenuBar bar = new JMenuBar();
JMenu mnActions = new JMenu("Actions");
JMenuItem mnItmCopy = new JMenuItem("Copy to the clipboard");
JMenuItem mnItmCut = new JMenuItem("Cut to the clipboard");
JMenuItem mnItmPaste = new JMenuItem("Paste from the clipboard");
Clipboard clib = Toolkit.getDefaultToolkit().getSystemClipboard();
public CopyExample() {
mnActions.add(mnItmCopy);
mnActions.add(mnItmCut);
mnActions.add(mnItmPaste);
bar.add(mnActions);
mnItmCopy.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
clib.setContents(new StringSelection(txtArea.getSelectedText()),null);
}
});
mnItmCut.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
clib.setContents(new StringSelection(txtArea.getSelectedText()),null);
txtArea.replaceSelection("");
}
});
mnItmPaste.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
Transferable t = clib.getContents(null);
try{
String clibContent = t.getTransferData(DataFlavor.stringFlavor).toString();
txtArea.insert(clibContent, txtArea.getCaretPosition());
} catch(UnsupportedFlavorException e){
e.printStackTrace();
} catch(IOException e){
e.printStackTrace();
}
}
});
frm.setJMenuBar(bar);
frm.add(txtArea);
frm.setSize(400, 400);
frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frm.setVisible(true);
}
public static void main(String[] args) {
new CopyExample();
}
}
import javax.swing.*;
إقرأ الكود جيدا بعد أن تكون شربت فنجانين قهوة ، ولما تفهمه إبعث لي أتعابي على حسابي البنكي :cash:
