Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

AWT

Mitglied: duddits

duddits (Level 2) - Jetzt verbinden

04.12.2005, aktualisiert 13.12.2005, 4902 Aufrufe, 2 Kommentare

Wie kann man etwas bei einer TextArea makieren???

Hi,

ich möchte einen Editor schreiben. Möchte aber AWT benutzen und kein Swing.
Habe derzeit Probleme die Typischen Bearbeiten Funktionen, wie z.B. makieren, kopieren, ausschneiden, rückgängig etc. zu verwirklichen.
Gibt es dazu schon vorgefärtigte Klassen,Methoden, etc. ?
Wenn ja welche ?
Oder kann mir jemand einen Tipp oder Hinweis geben wie ich das realisieren kann?
Falls es sich doch nicht so leicht mit AWT realisieren lässt, bin ich auch gewillt auf andere Bibiliotheken oder Klassen zurückzugreifen(z.B. SWT, Swing).

Bin über jeden Hinweis dankbar.

mfg duddits
Mitglied: duddits
06.12.2005 um 22:50 Uhr
Hi,

da keiner antwortet. Habe das Problem mittlweweile selber gelöst, doch jetzt würde ich gerne wissen wie ich die Zwischenablage (am besten Linux und Windows , aber primär Windows) nutzen kann. Den meine Kopier Funktoion ist nur inerhalb de Editors gültig.
Ich möchte aber das dies überall gültig ist.

mfg duddits
Bitte warten ..
Mitglied: duddits
13.12.2005 um 22:42 Uhr
Hi,

da sich anscheinend nicht viele mit java hier auskennen, möchte ich den jenigen doch mal kutz sagen wie jetzt mein problem gelöst habe.
Habe mich dazu genötigt mit swing zu arbeiten. Diese Klasse bietet auch schon direkt die methoden zum kopieren, ausschneiden oder einfügen.
Hier ein ausschnitt aus meinen Programm in der Version 0.1
<font class="code">
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import javax.swing.undo.*;

public class Version2 extends Frame implements ActionListener {

final JTextArea ta;

static Version2 ver;

String savepath = "";

String save;

Object content;

private Image icon, image;

final UndoManager undomanager;

public Version2() {
super("Jaditor (c) by Daniel Baier");
setSize(400, 450);
setBackground(Color.black);
setLayout(null);
setMenuBar(new MenuForVersion2(this));
undomanager = new UndoManager();
undomanager.setLimit(10);
ta = new JTextArea();
ta.setAutoscrolls(true);
ta.setBounds(20, 60, 350, 365);

ver.getContentPane().add( new JScrollPane(textarea) );
ta.getDocument().addUndoableEditListener(undomanager);

undomanager.setLimit(1000);
add(ta);

this.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
try {
String optionen[] = { "Ja", "Nein", "Abruch" };

int n = JOptionPane
.showOptionDialog(
null,
"Willst du wirklich Jaditor beenden ? \n Alle Änderungen werden verworfen.",
Fragetext
"Jaditor", Titel
JOptionPane.YES_NO_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE,
Icon
null, optionen, optionen[0]);

if (n == JOptionPane.YES_OPTION) {
System.exit(0);
}
if (n == JOptionPane.NO_OPTION) {
if (savepath == "") {

FileDialog fd = new FileDialog(ver,
"Speichern unter..", FileDialog.SAVE);
fd.show();

FileWriter fw = new FileWriter("/"
+ fd.getDirectory() + "/" + fd.getFile()
+ ".jad");

BufferedWriter bw = new BufferedWriter(fw);
bw.write(ta.getText());

bw.flush();
bw.close();
savepath = "/" + fd.getDirectory() + "/"
+ fd.getFile() + ".jad";

} else {

FileWriter fw = new FileWriter(savepath);

BufferedWriter bw = new BufferedWriter(fw);
bw.write(ta.getText());
bw.flush();
bw.close();

}
}
} catch (Exception ee) {

}
}
});



}

public void actionPerformed(ActionEvent e) {
try {

String actions = e.getActionCommand();
if (actions.equals("Beenden")) {

String optionen[] = { "Ja", "Nein", "Abruch" };

int n = JOptionPane
.showOptionDialog(
null,
"Willst du wirklich Jaditor beenden ? \n Alle Änderungen werden verworfen.", Fragetext
"Jaditor",
Titel
JOptionPane.YES_NO_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE, Icon
null, optionen, optionen[0]);

if (n == JOptionPane.YES_OPTION) {
System.exit(0);
}
if (n == JOptionPane.NO_OPTION) {
if (savepath == "") {

FileDialog fd = new FileDialog(ver,
"Speichern unter..", FileDialog.SAVE);
fd.show();

FileWriter fw = new FileWriter("/" + fd.getDirectory()
+ "/" + fd.getFile() + ".jad");

BufferedWriter bw = new BufferedWriter(fw);
bw.write(ta.getText());

bw.flush();
bw.close();
savepath = "/" + fd.getDirectory() + "/" + fd.getFile()
+ ".jad";

} else {

FileWriter fw = new FileWriter(savepath);

BufferedWriter bw = new BufferedWriter(fw);
bw.write(ta.getText());
bw.flush();
bw.close();

}
}
} else if (actions.equals("Alles makieren")) {
ta.selectAll();

} else if (actions.equals("Speichern")) {
try {
if (savepath == "") {

FileDialog fd = new FileDialog(ver,
"Speichern unter..", FileDialog.SAVE);
fd.show();

FileWriter fw = new FileWriter("/" + fd.getDirectory()
+ "/" + fd.getFile() + ".jad");

BufferedWriter bw = new BufferedWriter(fw);
bw.write(ta.getText());

bw.flush();
bw.close();
savepath = "/" + fd.getDirectory() + "/" + fd.getFile()
+ ".jad";

} else {

FileWriter fw = new FileWriter(savepath);

BufferedWriter bw = new BufferedWriter(fw);
bw.write(ta.getText());
bw.flush();
bw.close();

}

} catch (IOException ioe) {
System.err.println(ioe.getMessage());
}

} else if (actions.equals("Speichern unter..")) {

FileDialog fd = new FileDialog(ver, "Speichern unter..",
FileDialog.SAVE);
fd.show();

try {
FileWriter fw = new FileWriter("/" + fd.getDirectory()
+ "/" + fd.getFile() + ".jad");

BufferedWriter bw = new BufferedWriter(fw);
bw.write(ta.getText());
bw.flush();
bw.close();
savepath = "/" + fd.getDirectory() + "/" + fd.getFile()
+ ".jad";
} catch (IOException ioex) {
}
} else if (actions.equals("Öffnen")) {

FileDialog fd = new FileDialog(ver, "Öffnen", FileDialog.LOAD);
fd.show();

try {

BufferedReader br = new BufferedReader(new FileReader(fd
.getDirectory()
+ "/" + fd.getFile()));

StringBuffer sb = new StringBuffer();
String line;

for (int i = 1; i < 999999999; i++) {
line = br.readLine();
if (line == null) {
break;
}
sb = sb.append(line + "\n");
ta.setText(sb.toString());
}

br.close();
savepath = "/" + fd.getDirectory() + "/" + fd.getFile()
+ ".jad";
} catch (IOException ioex) {
}

} else if (actions.equals("Neu")) {
savepath = "";
ta.setText("");
} else if (actions.equals("Kopieren")) {
ta.copy();
} else if (actions.equals("Einfügen")) {
ta.paste();
mezhode von swing zum einfügen aus zwischenablage
} else if (actions.equals("Ausschneiden")) {
ta.cut();
}else if (actions.equals("Löschen")) {
ta.replaceSelection("");
}
} catch (Exception ex) {
String optionen[] = { "OK" };

int n = JOptionPane.showOptionDialog(null, ex.toString(), Fragetext
"Jaditor - Fehler",
Titel
JOptionPane.OK_OPTION, JOptionPane.ERROR_MESSAGE, // Icon
null, optionen, optionen[0]);
}
}

public static void main(String[] args) {
Splash sp = new Splash("logo.jpg",ver);
try{
Thread.sleep(6000);
sp.setVisible(false);
}catch(Exception e){

}
ver = new Version2();
ver.setVisible(true);
}
}
</font>

Das tolle daran es funktioniert unter windows und linux.

mfg duddits
Bitte warten ..
Neue Wissensbeiträge
Humor (lol)
(Part num your Hacked phone. +XX XXXXXX5200)
Erfahrungsbericht von Henere vor 2 TagenHumor (lol)4 Kommentare

Mein Handy hat aber ne ganz andere Endnummer. Muss ich mir jetzt Sorgen machen ? :-) Vielleicht betrifft es ...

Exchange Server

Letztes Update für Exchange 2016 CU9 war in gewisser Weise destruktiv

Erfahrungsbericht von DerWoWusste vor 2 TagenExchange Server6 Kommentare

Kurzer Erfahrungsbericht zu Exchange2016-KB4340731-x64 Der Exchangeserver hat wie gewöhnlich versucht, es in der Nacht automatisch zu installieren - abgesehen ...

Erkennung und -Abwehr

Neue Sicherheitslücke Foreshadow (L1TF) gefährdet fast alle Intel-Prozessoren

Information von Frank vor 3 TagenErkennung und -Abwehr3 Kommentare

Eine neue Sicherheitslücke, genannt Foreshadow (alias L1TF) wurde auf der Usenix Security 18 von einem Team internationaler Experten veröffentlicht. ...

Vmware
VMware Updates gegen L1 Lücke
Information von sabines vor 3 TagenVmware

Für die Vmware Produkte vCenter Server, ESXi, Workstation und Fusion stehe Updates bereit um die L1 Lücke zu schließen. ...

Heiß diskutierte Inhalte
Netzwerke
Netzwerk-Architektur mit VLANs
Frage von niLuxxNetzwerke25 Kommentare

Liebe Community, Ich hätte eine kurze Frage an euch. Ich werde in Kürze das Netzwerk unserer (sehr) kleinen Firma ...

Windows Server
WSUS nach Upgrade - kein Start mehr
gelöst Frage von Ghost108Windows Server9 Kommentare

Hallo zusammen, habe einen Windows Server 2012 welcher als WSUS dienst. Jetzt wurde ein Upgrade auf Server 2016 durchgeführt ...

Netzwerke
SSH - Wieso werde ich nach VPN Verbindung rausgeschmissen?
Frage von VernoxVernaxNetzwerke9 Kommentare

Hallo, ich habe es endlich geschafft mein Handy mit einer VPN Verbindung an meinen Router anzuschließen. Nach der Login ...

Microsoft
Ist es möglich ein reines Volume C Datenbackup in eine Hyper-V VM zu konvertieren?
Frage von Frank84Microsoft8 Kommentare

Hallo zusammen, ich habe hier ein Backup vorliegen, das ausschließlich das komplette C:\ Volume eines physischen Server 2012 enthält. ...