Autor Beitrag
AlexBegin
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 39



BeitragVerfasst: Mo 03.09.07 10:25 
Erst einmal ein Hallo allen zusammen. Ich habe vor cirka einer Woche angefangen mit Delphi 2005 Personal zu programmieren. Davor habe ich mit verschiedene Basic-Varianten gearbeitet.
Ich habe ein Projekt erstellt das aus zwei Forms besteht. Das erste ist das Hauptfenster und zweite ist eine Passwort-Abfrage mit verschiedene Controls. Genau bei dem zweiten Form habe ich Probleme.
Wenn beim drücken des Ok-Button (Button1) die ComboBox1 bzw. Edit1 leer sind oder wenn das Passwort verkehrt eingegeben wurde, soll ein entsprechenden Text dargestellt werden. Dazu habe ich ein leeres Label3 erstellt, den ich dann entsprechend den Text verändere. Dies funktioniert schon. Leider wird der Text nur linksbündig geschrieben. Wie kann ich erreichen das der Text zentriert dargestellt wird (ich habe mich mit Leerzeichen beholfen).
Das zweite Problem betrifft den Abbruch-Button (Button2), hiermit möchte das ganze Programm beenden. Leider erscheint immer wieder die Fehlermelung "Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt." Damit kann ich leider nichts anfangen.
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Borland.Vcl.StdCtrls, System.ComponentModel;

type
  TForm2 = class(TForm)
    Label1: TLabel;
    ComboBox1: TComboBox;
    Label2: TLabel;
    Edit1: TEdit;
    Button1: TButton;
    Label3: TLabel;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form2: TForm2;

implementation

uses Unit1;

{$R *.nfm}

procedure TForm2.Button1Click(Sender: TObject);

begin
  If (ComboBox1.Text = nil) or (Edit1.Text = nil) then
    begin
      Self.Label3.Text := '    Eingabefeld ist leer !!!' {Probleme mit dem zentrieren}
    end
  else
    begin
      If ComboBox1.Text = Edit1.Text then
        begin
          Form2.close
        end
      else
        begin
          Self.Label3.Text := '     Passwort ist falsch !!!' {Probleme mit dem zentrieren}
        end
     end;

end;

procedure TForm2.Button2Click(Sender: TObject);
begin
  Form1.Close  {Fehlermeldung}
end;

end.


Moderiert von user profile iconChristian S.: Code- durch Delphi-Tags ersetzt
Blackheart666
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2195

XP
D3Prof, D6Pers.
BeitragVerfasst: Mo 03.09.07 11:38 
Alignment, Application.Terminate

_________________
Blackheart666
Der Irrsinn ist bei Einzelnen etwas Seltenes, - aber bei Gruppen, Parteien, Völkern, Zeiten die Regel. (Friedrich Nietzsche)
AlexBegin Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 39



BeitragVerfasst: Mo 03.09.07 18:21 
@Blackheart666

Das Kommando Application.Terminate habe ich auch schon versucht, leider ohne Erfolg.
Habe aber ein Passwortdialog gefunden, mitdem es jetzt einwandfrei funktioniert.
Trotzdem vielen Dank.

Alex