Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Text Reverse (https://www.delphipraxis.net/39313-text-reverse.html)

Rastaman 31. Jan 2005 19:56


Text Reverse
 
Liste der Anhänge anzeigen (Anzahl: 1)
So. Mein erstes kleines Prog das ich hier vorstelle.
Wie der Name schon vermuten lässt, dreht es eingegebenen Text um, jedoch nicht auf knopfdruck, sondern direkt beims Schreiben.
Auf Wunsch wird der umgedrehte Text sofort in die Zwischenablage kopiert, damit er sofort im Chat etc. eingefügt werden kann.
Mit einem Druck auf die EnterTaste im Eingabefeld ist der Text sofort gelöscht und man kann neuen eingeben.
Das Programm erstellt auch noch eine kleine ini-Datei im Windowsordner, um die Einstellungen zu speichern.
Guckts euch einfach mal an :-D

//edit: So die funktion von jim is drin. Hätte nicht gedacht dass ich das schaffe :-D

Kernel32.DLL 31. Jan 2005 20:03

Re: Text Reverse
 
Über den Sinn des Programms lässt sich zwar streiten, aber es ist eigentlich ganz nett :thumb:

jim_raynor 31. Jan 2005 20:12

Re: Text Reverse
 
): .netlahebuzieb retröW red eglofnehieR eid reba ,neherduzmu retröW eid run mu nebeg nenoitpO enie hcon etlloS .mmargorP selloT

Ultimator 31. Jan 2005 20:23

Re: Text Reverse
 
Ach wieso?
Ich dreh manchmal einfach Sätze zum Spaß im Kopf um, einfach so, wenn mir langweilig ist.
Dann denk ich mir den Satz so, wie er dasteht und fange an, ihn von hinten zu sprechen :mrgreen:


Wer mich für verrückt hält, bitte Melden :mrgreen:

moritz 31. Jan 2005 20:24

Re: Text Reverse
 
Zitat:

Zitat von Ultimator
Dann denk ich mir den Satz so, wie er dasteht und fange an, ihn von hinten zu sprechen :mrgreen:

Machen wir das nicht alle, wenn uns langweilig ist? :mrgreen:

Kernel32.DLL 31. Jan 2005 20:48

Re: Text Reverse
 
Zitat:

Zitat von Ultimator
Wer mich für verrückt hält, bitte Melden :mrgreen:

*Meld, meld!*

aber keine Sorge, bin auch verrückt!

Rastaman 1. Feb 2005 12:46

Re: Text Reverse
 
Jetz haben das schon 31 Leute geladen und keiner hat ne Meinung oder n Kommentar :?

moritz 1. Feb 2005 13:20

Re: Text Reverse
 
Servus,

also:
Ich finde das Programm ist gut und übersichtlich aufgebaut. Allerdings sollte die Option "Beim Schreiben in die Zwischenablage" beim Start deaktiviert sein, sonst haut es dir schnell deine Zwischenablage raus, obwohl du das gar nicht geplant hattest. Ansonsten: Nett :thumb:

Rastaman 1. Feb 2005 13:28

Re: Text Reverse
 
Naja. Das läuft halt über inis, aber beim ersten Start könnte man sie rausnehmen das stimmt.

stefangeorg 1. Feb 2005 14:24

Re: Text Reverse
 
Funktioniert und ist ganz lustig wenn man jemanden im Messenger o.Ä. ärgern will.

Ein Tip noch, die Satzzeichen sollten am Satzende stehen bleiben wenn man
die Wortreihenfolge beibehält.

mfg

Georg Härting

Rastaman 1. Feb 2005 19:38

Re: Text Reverse
 
Daran habe ich auch schon gedacht aber keine ahnung wie ich das machen könnte :cry:

Kernel32.DLL 1. Feb 2005 19:57

Re: Text Reverse
 
Keine Ahnung wie du was machen könntest?

Rastaman 2. Feb 2005 14:06

Re: Text Reverse
 
Dass die Satzzeichen am Ende stehen.
Schreib mal einen Satz mit "Wortreihenfolge beibehalten" und mach am ende ein ?

//edit:Sorry for Doppelpost :oops:

Rastaman 2. Feb 2005 14:07

Re: Text Reverse
 
Dass die Satzzeichen am Ende stehen.
Schreib mal einen Satz mit "Wortreihenfolge beibehalten" und mach am ende ein ?

stefangeorg 2. Feb 2005 14:10

Re: Text Reverse
 
Ich kenne ja deinen Algorithmus nicht,
aber prüfe doch ob am Wortende ein Satzzeichen ist.

Wenn ja lass die Umdrehprozedur vor dem Satzzeichen beenden.

mfg

Georg Härting

Rastaman 2. Feb 2005 14:12

Re: Text Reverse
 
Code:
procedure TForm1.txtEingabeChange(Sender: TObject);
var
  s, s2, s3, s4: String;
  sl: TStringList;
  i, x:Integer;
begin
  s := txtEingabe.Text;
  try
    For i:=0 to Length(s) do
      s2 := s2 + s[Length(s) - i];
      If chkKeep.Checked = False then
        txtAusgabe.Text := s2
      else begin
        sl := TStringList.Create;
        sl.Delimiter := ' ';
        sl.DelimitedText := s2;
        For x:=1 to sl.Count do begin
          s3 := sl.Strings[sl.count - x];
          s4 := s4 + s3 + ' ';
        end;
        txtAusGabe.Text := s4;
        s4 := '';
      end;
        If chkCopy.Checked = True then
          Clipboard.AsText := txtAusgabe.Text;
  except
    txtAusgabe.Text := '';
  end;
end;

stefangeorg 2. Feb 2005 14:40

Re: Text Reverse
 
Ich würde es etwa so machen (hab kein Delphi zur Hand, aus dem Kopf...)

Delphi-Quellcode:
procedure TForm1.txtEingabeChange(Sender: TObject);
var
  s, s2, s3, s4: String;
  sl: TStringList;
  i, x:Integer;
  //
  sTemp : String;
  // 
begin
  s := txtEingabe.Text;
  try
    For i:=0 to Length(s) do
      s2 := s2 + s[Length(s) - i];
      If chkKeep.Checked = False then
        txtAusgabe.Text := s2 
      else begin
        sl := TStringList.Create;
        sl.Delimiter := ' ';
        sl.DelimitedText := s2;
        For x:=1 to sl.Count do begin
          s3 := sl.Strings[sl.count - x];

          // hier wird die Wortreihenfolge wieder hergestellt???
          // dann hier auf Satzzeichen prüfen ... z.B.
          if (s3[1] = '!') or (s3[1] = '?') or (s3[1] = '.') then
          begin
               sTemp := s3[1];
               s3 := Copy(s3, 2, Length(s3) - 1) + sTemp;
          end;
          //
 
          s4 := s4 + s3 + ' ';
        end;
        txtAusGabe.Text := s4;
        s4 := '';
      end;
        If chkCopy.Checked = True then
          Clipboard.AsText := txtAusgabe.Text;
  except
    txtAusgabe.Text := '';
  end;
end;
Es gibt da noch ein ganz paar bessere und einfachere Methoden zur String-Manipulation,
aber da schau mal in die OH.

mfg

Georg Härting

Rastaman 2. Feb 2005 14:49

Re: Text Reverse
 
Jo klappt :thumb:
Aber versteh ich nicht wirklich :lol:


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:40 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz