AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi String auslesen und auf zeichen reagieren und und und ...
Thema durchsuchen
Ansicht
Themen-Optionen

String auslesen und auf zeichen reagieren und und und ...

Offene Frage von "Axxus"
Ein Thema von Axxus · begonnen am 18. Okt 2006 · letzter Beitrag vom 29. Okt 2006
 
Benutzerbild von chrisw
chrisw

Registriert seit: 11. Jan 2005
Ort: Schleswig
193 Beiträge
 
Delphi XE8 Professional
 
#10

Re: String auslesen und auf zeichen reagieren und und und ..

  Alt 19. Okt 2006, 15:04
Also, ich habe (weil es mich einfach interessiert) mal versucht so etwas zu bauen !

Ich denke, das ist keine schöne Lösung, aber es funktioniert.

Ich habe ein Form mit einem Edit (Edit1) und einem Memofeld (Memo1)

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Memo1: TMemo;
    procedure Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
    BefehlListe : TStringList;
    Befehl : Integer;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);
begin
  Befehl := -1; //kein Befehl
  BefehlListe := TStringList.Create;
  //Dies gilt nur der Veranschaulichung,
  //später würde ich die Befehle aus einer textDatei Laden (
  // mit BefehlListe.Loadfromfile('BefehlFile.dat');
  BefehlListe.Add('MEMO.FONT.COLOR'); //0
  BefehlListe.Add('MEMO.HEIGHT'); //1
  BefehlListe.Add('MEMO.WEIGHT'); //2 Wobei ich denke, dass Du Width meinst
  // usw. .......
end;

//OnKeyDown des Edit
procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var Index : Integer;
begin
  if (Key = VK_Return) then
  begin
    if Edit1.text = '=then //Das = war ja von Dir gewünscht, aber es tut nichts
    begin
      Edit1.Text := '';
      exit;
    end;
    if Befehl <> -1 then
    begin
      case Befehl of
              0 : begin //Memo.Font.Color
                    try
                      Memo1.Font.Color := TColor(Edit1.Text);
                    except
                      ShowMessage('ungültige Eingabe');
                    end;
                  end;
              1 : begin //Memo.Height
                    try
                      Memo1.Height := StrToInt(Edit1.Text);
                    except
                      ShowMessage('ungültige Eingabe');
                    end;
                  end;
              2 : begin //Memo.Weight
                    try
                      Memo1.Width := StrToInt(Edit1.Text);
                    except
                      ShowMessage('ungültige Eingabe');
                    end;
                  end;
              // usw ................
        end;
    end;
    Befehl := BefehlListe.IndexOf(UPPERCASE(Edit1.text));
    Edit1.Text := '';
  end;
end;

end.

Kannst ja mal gucken ob es das ist was Du meinst !
Christian Wahl
me, myself and I, die lustigen Drei !!
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:52 Uhr.
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