Delphi-PRAXiS
Seite 4 von 4   « Erste     234   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi reset eines programmes? (https://www.delphipraxis.net/23207-reset-eines-programmes.html)

Christian Seehase 30. Mai 2004 23:37

Re: reset eines programmes?
 
Moin Herrentor,

dann solltest Du die Routine ergänzen:

Code:
with Combobox1 do                      
  begin
    Tab.DefaultRowHeight := Height;
    Visible := False;
    [color=red]Items.Clear;[/color]
    Items.Add('Rechteck');
    Items.Add('Dreieck');
    Items.Add('Kreissektor');
    Items.Add('Kreisabschnitt');
    Items.Add('Kreis');
    Text := '';
  end;
Anschliessend lagerst Du die Routine in einer Methode des Formulares aus, und rufst diese einmal aus dem Form Create, und ein anderes Mal aus der Button Click Routine des Reset Buttons auf.

kiar 30. Mai 2004 23:38

Re: reset eines programmes?
 
moin chris,

getestet und für gut befunden :mrgreen:

raik

Christian Seehase 30. Mai 2004 23:39

Re: reset eines programmes?
 
Moin Raik,

Deins oder meins :gruebel: :mrgreen:

kiar 30. Mai 2004 23:40

Re: reset eines programmes?
 
moin chris,

deins und meins :mrgreen:

raik

herrentor 30. Mai 2004 23:41

Re: reset eines programmes?
 
das steht bei mir in der tabselectcell prozedur

Code:

var R: TRect;
     i: integer;

begin
  if (ACol = 1) and (ARow > 0) then
  begin
    R := Tab.CellRect(ACol, ARow);
    R.Left := R.Left + Tab.Left;
    R.Right := R.Right + Tab.Left;
    R.Top := R.Top + Tab.Top;
    R.Bottom := R.Bottom + Tab.Top;
    with Combobox1 do
    begin
      ItemIndex := Items.IndexOf(Tab.Cells[ACol, ARow]);
      Left := R.Left + 1;
      Top := R.Top + 1;
      Width := (R.Right + 1) - R.Left;
      Height := (R.Bottom + 1) - R.Top;
      Visible := True;
      SetFocus;
    end;
  end;
 CanSelect := True;
end;
und das im programm:

Code:

procedure TForm1.ComboBox1Change(Sender: TObject);

begin
  Tab.Cells[Tab.Col, Tab.Row]:=ComboBox1.Items[ComboBox1.ItemIndex];
  ComboBox1.Visible := False;
  Tab.SetFocus;
end;

procedure TForm1.ComboBox1Exit(Sender: TObject);
begin
  Tab.Cells[Tab.Col, Tab.Row]:=ComboBox1.Items[ComboBox1.ItemIndex];
  ComboBox1.Visible := False;
  Tab.SetFocus;
end;

herrentor 30. Mai 2004 23:43

Re: reset eines programmes?
 
wie lager ich denn aus?

kiar 30. Mai 2004 23:43

Re: reset eines programmes?
 
moin herrentor,

in beiden proceduren machst du das gleiche :shock: warum?

raik

herrentor 30. Mai 2004 23:45

Re: reset eines programmes?
 
wenn ich eins weglasse, spinnt er total rum.

Christian Seehase 30. Mai 2004 23:52

Re: reset eines programmes?
 
Moin Herrentor,

Du kannst eine Prozedur unterschiedlichen Ereignissen zuweisen, wenn ihre Parameter übereinstimmen.
In diesem Falle kannst Du, z.B., die OnChange so lassen wie sie ist, und sie im Objekt Inspektor dem OnExit Event zuweisen (klick mal auf den Pfeil abwärts rechts vom Event)

herrentor 31. Mai 2004 00:00

Re: reset eines programmes?
 
ok danke


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:39 Uhr.
Seite 4 von 4   « Erste     234   

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