Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi mit einem Template das aktuelle Datum auszulesen? (https://www.delphipraxis.net/108825-mit-einem-template-das-aktuelle-datum-auszulesen.html)

Chemiker 20. Feb 2008 06:51


mit einem Template das aktuelle Datum auszulesen?
 
Hallo,

ist es möglich mit einem Template das aktuelle Datum auszulesen.
Und wenn es möglich ist, wie kann man das aktuelle Datum mit einem Template abfragen?

Bis bald Chemiker

Mackhack 20. Feb 2008 07:05

Re: mit einem Template das aktuelle Datum auszulesen?
 
Meinst du TimeToStr(Now)?

Chemiker 20. Feb 2008 07:12

Re: mit einem Template das aktuelle Datum auszulesen?
 
Hallo Mackhack,

nein, ich möchte das aktuelle Datum auslesen und dann im Quell-Text reinschreiben. Ich möchte mir für die Dokumentation von Functionen ,Proceduren usw. das Erstellungsdatum reinschreiben. Bisher mache ich das immer manuell und will das einfach automatisieren.

Bis bald Chemiker

Mackhack 20. Feb 2008 07:13

Re: mit einem Template das aktuelle Datum auszulesen?
 
Sorry,

hab ich total falsch gelesen! Is halt doch spaet!

Union 20. Feb 2008 07:40

Re: mit einem Template das aktuelle Datum auszulesen?
 
Du kannst dafür mit dem ToolsAPI ein Keyboard-Binding erstellen. Dann hast Du Zugriff auf den Editor, siehe Programmgerüst (enthält nur das nötigste, ungetestet):
Delphi-Quellcode:
interface
uses ToolsAPI;

procedure Register

implementation

type
  TMeineKeyBoardKlasse = class(TNotifierObject, IOTAKeyboardBinding)
  public
    function GetBindingType: TBindingType;
    function GetDisplayName: string;
    function GetName: string;
    procedure BindKeyboard(const BindingServices:
      IOTAKeyBindingServices);
    procedure KeyLastUpdated(const Context: IOTAKeyContext;
      KeyCode: TShortcut;
      var BindingResult: TKeyBindingResult);
  end;

procedure Register;
begin
  (BorlandIDEServices as IOTAKeyboardServices).
    AddKeyboardBinding(TMeineKeyBoardKlasse.Create);
end;

function TMeineKeyBoardKlasse.GetBindingType: TBindingType;
begin
  (* Nur teilweise Keyboard umbelegen *)
  Result := btPartial;
end;

function TMeineKeyBoardKlasse.GetDisplayName: string;
begin
  (* Anzeige in den Optionen *)
  Result := 'Meine Tastaturbelegung';
end;

function TMeineKeyBoardKlasse.GetName: string;
begin
  Result := 'mein.keyboard'; // muss einmalig sein
end;

procedure TMeineKeyBoardKlasse.BindKeyboard(
  const BindingServices: IOTAKeyBindingServices);
begin
  (* Taste mit Adresse der Funktion hinzufügen *)
  BindingServices.AddKeyBinding([TextToShortCut('Ctrl+Shift+F5')], KeyLastUpdated, nil);
end;

procedure TMeineKeyBoardKlasse.KeyLastUpDated(const Context: IOTAKeyContext;
  KeyCode: TShortcut; var BindingResult: TKeyBindingResult);

var
  iEditPos: IOTAEditPosition;
begin
   BindingResult := krHandled;
   (* Hurrah, das eigenliche Ziel ist erreicht! *)
   iEditPos:= Context.EditBuffer.EditPosition;
   iEditPos.InsertText(FormatDateTime('dd.mm.yyyy - hh:nn', now));
end;

Hawkeye219 20. Feb 2008 08:11

Re: mit einem Template das aktuelle Datum auszulesen?
 
Hallo,

zum Einfügen des aktuellen Datums reicht der von Union vorgestellte Weg sicher aus. Bei Verwendung der Live Templates wird es wohl auf die Erstellung einer eigenen Script Engine hinauslaufen, so wie es in diesem Artikel beschrieben wird.

Gruß Hawkeye

semo 20. Feb 2008 09:12

Re: mit einem Template das aktuelle Datum auszulesen?
 
den link den dir Hawkeye219 genannt hat kann ich nur empfehlen,
anhand diese anleitung habe ich so eine scriptengine umgesetzt und die läuft einwandfrei.

RavenIV 20. Feb 2008 09:17

Re: mit einem Template das aktuelle Datum auszulesen?
 
Ein ehemaliger Kollege hat mit D7 so was ähnliches auch schon gemacht.
Er hat ein Tastenkürzel gedrückt und dann stand eine Kommentarzeile in dem Format
// <DATUM> <KÜRZEL>
im Quellcode an der Cursorposition.

Hab das aber nie weiter verfolgt, da meine "Standard-Kommentarzeile" anderst aufgebaut war und ich die immer per Copy&Paste eingefügt habe.

Chemiker 21. Feb 2008 06:20

Re: mit einem Template das aktuelle Datum auszulesen?
 
Hallo,

danke erst mal für die Informationen.

Werde diese mal ausprobieren und wenn ich konkrete Fragen dazu habe, noch mal melden.

Bis bald Chemiker


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:30 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