Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Notepad Clone... komm aber nich weiter =( (https://www.delphipraxis.net/3936-notepad-clone-komm-aber-nich-weiter-%3D.html)

Zombi 6. Apr 2003 22:22


Notepad Clone... komm aber nich weiter =(
 
Hi!

Ich hab mich ma an einen Notepad Clone gemacht was eigentlich auch bisher nich das prob war. ich habe im mom aber nur öffnen, speichern, Beenden drin. ich wollte evtl. noch drucken und alles markieren und so..

Bei Drucken würde ich den printdialog benutzen doch ich weiß nich genau wie ich da den Drucker anspreche =(

Bei alles markieren bzw kopieren, ausschneiden u.s.w würde ich die Tastenkürzel nehmen z.B: STRG+A für Alles markieren ich weiß das STRG=$11 ist und A=$41
Doch wie bring ich das in den QT rein ? davon hab ich noch kp
vielen dank

cya

Zombi :firejump:

Daniel B 6. Apr 2003 22:35

Hallo,

ja wenn haben wir denn da? ;)
Schau Dir folgenden Thread an. Da ist das auch mit dem Dialog gemacht.

Grüsse, Daniel :hi:

nailor 6. Apr 2003 22:50

Shortcuts:

KeyPreview der Form true -> und mal ein wenig mit dem OnKeyDown spielen, oder hier in der dp suchen...

Mirilin 6. Apr 2003 23:11

und falls Du nicht weiter kommst, in diesem Buch wird 'Scratch Pad' erstellt...

vielleicht findest Du ja was brauchbares...

Zombi 7. Apr 2003 15:54

danke das mit den Tastenkürzel werde ich noch gucken aber das mit drucken hat mich dann doch gerade ins staunen versetzt. Als ich mir den QT angegeguckt hab, den du in diesem Thread geschrieben hast Daniel, mit dem drucken. Also ist das mit dem drucken wirklich so schwer ? bei öffnen hab ich ganz easy

Delphi-Quellcode:

Opendialog1.execute;
Memo1.Lines.LoadfromFile (Opendialog1.Filename);
und ich dachte (auch wenns ein bisschen leichtsinnig ist :oops: ) das ich das mit drucken ma wieder in son paar Zeilen packen kann :roll: .

Einen so langen QT kann ich glaub ich noch nich ganz lernen es bringt ja nix wenn ich das auswendig lerne (was ich bei dieser größe wahrscheinlich eh nich könnte).

Dann noch 2 Fragen :)
1: Warum muss ich bevor ich etwas speicher erst eine Datei geöffnet haben ? wenn ich vorher keine Datei lade stürzt das Proggi ab ?!

2: Wenn ich jetzt einen Text schreibe der über das Bild hinaus gehe kommt kein Scroll Button ?! Muss ich da jetzt etwas dazu proggen oder sowas ?

THX

Cya
Zombi :firejump:

Mirilin 7. Apr 2003 16:06

2) wenn du "WordWrap" auf True hast, bricht er dir die Zeile um, und fängt - optisch - auf einer neuen an, eine Scrollbar braucht es daher nicht.
Wenn wordwrap auf false ist sollte eine kommen, oder du musst es noch einstellen : "ScrollBars"

Haegar 7. Apr 2003 16:19

wie haste denn das mit dem speichern gelöst?

gruss haegar

Zombi 7. Apr 2003 17:12

Das mit dem speichern hab ich so gemacht :

Delphi-Quellcode:
Savedialog1.execute;
Memo1.Lines.SaveToFile (Savedialog1.Filename);
das mit WordWrap hab ich ma ausprobiert doch das was ich will macht er nich. Wenn ich WordWrap an oder aus habe, sobald der Text größer is als das Memo kann ich nicht runterscrollen mit einem Balken oder sowas. ich kann wohl mit Pfeiltasten hoch und runter gehen aber das is ja laaaaangweilig :mrgreen: .

Mit den Tastenkürzel bin ich auch bei der Suchfunktion nich schlauer geworden. ich will ja ausschneiden, kopieren und so machen. Ich dachte mir das ich einfach die Windows Tastenkürzel nehme aber das is wahrscheinlich zu umständlich weil ich denke ma das das einfacher geht :?: . Da bitte ich nochma um Hilfe :o

cya

Zombi :firejump:

Daniel B 7. Apr 2003 17:19

Hallo,
Zitat:

Zitat von Zombi
Einen so langen QT kann ich glaub ich noch nich ganz lernen es bringt ja nix wenn ich das auswendig lerne (was ich bei dieser größe wahrscheinlich eh nich könnte).

Die Prozedur ist in wirklichkeit etwa 5-7 mal länger, es ist ja nur ein kleiner Ausschnitt!
Hier mal die Prozedur abgekürtzt, damit Du vielleicht besser durchblickst.
Delphi-Quellcode:
procedure TMainFormMC2004.DruckenErweitertClick(Sender: TObject);
//Daten Drucken; Im erweiterten Format
var
  tf: TextFile; //tf = Variable zum Datei Schreiben
  pt: TextFile; //pt = Variable zum Datei Drucken
  p: string; //Stringvariable für die Druckdatei
begin
  if PrintDialog.Execute then
  begin
    AssignFile(tf, ExtractFilePath(ParamStr(0)) + 'MeineDatei.txt');
    ReWrite(tf); //Datei zum Schreiben Öffnen
    WriteLn(tf, 'String 1');

    Reset(tf); //Datei zum Lesen Öffnen
    AssignPrn(pt); //Drucker "Öffnen"

    Printer.Canvas.Font.Name := 'Courier New'; //Schriftart setzen
    Printer.Canvas.Font.Size := 10; //Schriftgrösse setzen

    ReWrite(pt); //Druckdatei zum Schreiben Öffnen
    while not EOF(tf) do //Falls Dateiende noch nicht erreicht
    begin
      ReadLn(tf, p); //Lies Zeile aus der Datei
      WriteLn(pt, p); //Schreib Zeile zum Drucker
    end;
  CloseFile(pt); //Schliesse Druckdatei
  CloseFile(tf); //Schliesse Datei
  end;
end;
Hoffe das es jetzt leichter für Dich ist.

Grüsse, Daniel :hi:

Zombi 7. Apr 2003 17:38

Sorry aber da sind mir zuviele neue Begriffe auf einmal drin um das zu kapieren. Allerdings hoffe ich das es nich lange dauert bis ich es kapiere ich werd es auf jeden Fall speichern und da öfters mal reingucken. Aber trotzdem danke ! ! !

Könntet ihr denn meine anderen Fragen vorerst beantworten ?

THX

cya
Zombi :firejump:


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:17 Uhr.
Seite 1 von 2  1 2      

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