AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Thread Error

Ein Thema von Daniel B · begonnen am 19. Nov 2002 · letzter Beitrag vom 20. Nov 2002
 
Daniel B
(Gast)

n/a Beiträge
 
#3
  Alt 19. Nov 2002, 21:22
Delphi-Quellcode:
unit Hauptformular;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, CPort, StdCtrls, Buttons, Einstellungen, Info, Inifiles;

type
  TForm1 = class(TForm)
    GroupBox1: TGroupBox;
    GroupBox2: TGroupBox;
    ComPort: TComPort;
    MainMenu: TMainMenu;
    ButtonSX0auf0: TButton;
    ButtonSX1auf0: TButton;
    ButtonSX0auf1: TButton;
    ButtonSX1auf1: TButton;
    Datei: TMenuItem;
    Extras: TMenuItem;
    MenueEinstellungen: TMenuItem;
    Hilfe1: TMenuItem;
    MenueHilfe: TMenuItem;
    N1: TMenuItem;
    MenueInfo: TMenuItem;
    GroupBox3: TGroupBox;
    BitBtnEin: TBitBtn;
    BitBtnAus: TBitBtn;
    BitBtnSX0und1auf0: TBitBtn;
    BitBtnBeenden: TBitBtn;
    MenueBeenden: TMenuItem;
    MenueNeustart: TMenuItem;
    BitBtnSX0und1auf1: TBitBtn;
    procedure FormShow(Sender: TObject);
    procedure BitBtnEinClick(Sender: TObject);
    procedure BitBtnAusClick(Sender: TObject);
    procedure BitBtnSX0und1auf0Click(Sender: TObject);
    procedure BitBtnSX0und1auf1Click(Sender: TObject);
    procedure MenueNeustartClick(Sender: TObject);
    procedure MenueEinstellungenClick(Sender: TObject);
    procedure MenueInfoClick(Sender: TObject);
    procedure ButtonSX0auf0Click(Sender: TObject);
    procedure ButtonSX1auf0Click(Sender: TObject);
    procedure ButtonSX0auf1Click(Sender: TObject);
    procedure ButtonSX1auf1Click(Sender: TObject);
    procedure BitBtnBeendenClick(Sender: TObject);

  private
    { Private-Deklarationen }

  public
    { Public-Deklarationen }

  end;

var
  Form1: TForm1;
  CPPort: string;
  CPBaud: string;
// CPForm: string;

implementation
{$R *.dfm}

procedure TForm1.FormShow(Sender: TObject);
//Befehle die beim Start ausgeführt werden
var
  ini: TIniFile;
begin
  if not (FileExists('SXSETZER.ini')) then //wenn die Datei noch nicht angelegt ist
  begin
    ini := TIniFile.Create(ChangeFileExt(ParamStr(0), '.ini'));
    try //Standardwerte schreiben
      ini := TIniFile.Create(ChangeFileExt(ParamStr(0), '.ini'));
      ini.WriteString('Einstellungen', 'Port', 'COM1');
      ini.WriteString('Einstellungen', 'Baud', '9600');
// ini.WriteString('Einstellungen', 'Format', '2');
      CPPort := ini.ReadString('Einstellungen', 'Port', ''); //Standardwerte lesen und setzen
      CPBaud := ini.ReadString('Einstellungen', 'Baud', '');
// CPForm := ini.ReadString('Einstellungen', 'Format', '');
    finally
      ini.Free; //Datei schliessen/freigeben
    end;
  end
  else if FileExists('SXSETZER.ini') then //falls Datei schon vorhanden
  begin
    ini := TIniFile.Create(ChangeFileExt(ParamStr(0), '.ini'));
    try //Werte lesen
      CPPort := ini.ReadString('Einstellungen', 'Port', '');
      CPBaud := ini.ReadString('Einstellungen', 'Baud', '');
// CPForm := ini.ReadString('Einstellungen', 'Format', '');
    finally
      ini.Free; //Datei schliessen/freigeben
    end;
  end;
  BitBtnBeenden.SetFocus;
  ComPort.Port := CPPort; //ComPort Port setzen
  ComPort.CustomBaudRate := StrToInt(CPBaud); //ComPort BaudRate setzen
  ComPort.Open;
end;

procedure TForm1.BitBtnEinClick(Sender: TObject);
//Gleis EIN
begin
  ComPort.WriteStr(#255#128);
end;

procedure TForm1.BitBtnAusClick(Sender: TObject);
//Gleis AUS
begin
  ComPort.WriteStr(#255#0);
end;

procedure TForm1.BitBtnSX0und1auf0Click(Sender: TObject);
//SX0 und SX1 auf 0 setzen
begin
  ComPort.WriteStr(#114#2);
end;

procedure TForm1.BitBtnSX0und1auf1Click(Sender: TObject);
//SX0 und SX1 auf 1 setzen
var
  i: integer;
begin
  for i := 128 to 231 do
  begin
    ComPort.WriteStr(#254#0 + chr(i) + #255);
    ComPort.WriteStr(#254#1 + chr(i) + #255);
  end;
end;

procedure TForm1.MenueNeustartClick(Sender: TObject);
//Neustart der Zentrale
begin
  ComPort.WriteStr(#114#0);
end;

procedure TForm1.MenueEinstellungenClick(Sender: TObject);
//Das Einstellungen-Fenster öffnen
begin
  Einst.ShowModal;
end;

procedure TForm1.MenueInfoClick(Sender: TObject);
//Das Info-Fenster öffnen
begin
  About.ShowModal;
end;

procedure TForm1.ButtonSX0auf0Click(Sender: TObject);
//Adressen 0 - 103 bei SX0 auf 0 setzen
var
  i: integer;
begin
  for i := 128 to 231 do
  begin
    ComPort.WriteStr(#254#0 + chr(i) + #0);
  end;
end;

procedure TForm1.ButtonSX1auf0Click(Sender: TObject);
//Adressen 0 - 103 bei SX1 auf 0 setzen
var
  i: integer;
begin
  for i := 128 to 231 do
  begin
    ComPort.WriteStr(#254#1 + chr(i) + #0);
  end;
end;

procedure TForm1.ButtonSX0auf1Click(Sender: TObject);
//Adressen 0 - 103 bei SX0 auf 1 setzen
var
  i: integer;
begin
  for i := 128 to 231 do
  begin
    ComPort.WriteStr(#254#0 + chr(i) + #255);
  end;
end;

procedure TForm1.ButtonSX1auf1Click(Sender: TObject);
//Adressen 0 - 103 bei SX1 auf 1 setzen
var
  i: integer;
begin
  for i := 128 to 231 do
  begin
    ComPort.WriteStr(#254#1 + chr(i) + #255);
  end;
end;

procedure TForm1.BitBtnBeendenClick(Sender: TObject);
begin
  ComPort.Close;
  Close;
end;

end.
  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 16:49 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