Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Ich würde gerne mitzählen, wie oft Form1 geöffnet wurde! (https://www.delphipraxis.net/118961-ich-wuerde-gerne-mitzaehlen-wie-oft-form1-geoeffnet-wurde.html)

technik05 18. Aug 2008 17:58


Ich würde gerne mitzählen, wie oft Form1 geöffnet wurde!
 
Hallo :?

Ich würde gerne mitzählen, wie oft Form1 geöffnet wurde!
Auf Form1 sichtbar, geht das ????
Bitte Quelltext einfügen oder beschreiben, habe immer noch keine Ahnung :roll:

Delphi-Quellcode:
 Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ExtCtrls, ComCtrls, DBTables, StdCtrls, jpeg;

type
  TForm1 = class(TForm)
    Timer1: TTimer;
    Label1: TLabel;
    Label2: TLabel;
    ProgressBar1: TProgressBar;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    procedure Timer1Timer(Sender: TObject);
    procedure FormActivate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Timer1Timer(Sender: TObject);
begin
ProgressBar1.StepIt;
  if ProgressBar1.Position < 1 then
    Close;
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
 ProgressBar1.Min := 0;
  ProgressBar1.Max := 60;
  ProgressBar1.Position := ProgressBar1.Max;
  ProgressBar1.Step := -1;
end;

end.

lbccaleb 18. Aug 2008 18:02

Re: Ich würde gerne mitzählen, wie oft Form1 geöffnet wurde!
 
Du kannst dir ne Variable Dekalrieren, und diese dann in FormShow hochzählen...

technik05 18. Aug 2008 18:07

Re: Ich würde gerne mitzählen, wie oft Form1 geöffnet wurde!
 
wie würde das dann quelltext mäßig aussehen ???
oder ist das zu viel arbeit ?? keine ahnung ??

aber trotzdem danke

mkinzler 18. Aug 2008 18:08

Re: Ich würde gerne mitzählen, wie oft Form1 geöffnet wurde!
 
Also wenn du es nicht einmal schaffst eine Variable um eins hochzuzählen, dann lass die Finger von der Programmierung.
Zudem hast du dich im Unterforum vergriffen

technik05 18. Aug 2008 18:14

Re: Ich würde gerne mitzählen, wie oft Form1 geöffnet wurde!
 
Das ist aber eine Unterstützung für Anfänger!!
Bin nicht vom Himmel gefallen !

Ist dieses Forum nur für Profis ????

lbccaleb 18. Aug 2008 18:24

Re: Ich würde gerne mitzählen, wie oft Form1 geöffnet wurde!
 
Delphi-Quellcode:
Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ExtCtrls, ComCtrls, DBTables, StdCtrls, jpeg;

type
  TForm1 = class(TForm)
    Timer1: TTimer;
    Label1: TLabel;
    Label2: TLabel;
    ProgressBar1: TProgressBar;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    procedure Timer1Timer(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure FormShow(Sender: TObject); // hier hinzufügen nicht vergessen
 private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  FormShowCount: Integer; // Hier die Variable als integer deklarieren...


implementation

{$R *.DFM}

procedure TForm1.Timer1Timer(Sender: TObject);
begin
ProgressBar1.StepIt;
  if ProgressBar1.Position < 1 then
    Close;
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
ProgressBar1.Min := 0;
  ProgressBar1.Max := 60;
  ProgressBar1.Position := ProgressBar1.Max;
  ProgressBar1.Step := -1;
end;

procedure TForm1.FormShow(Sender: TObject); //Diese Procedure muss noch im Objectinspektor bei FormShow ausgewählt werden (NICHT!! vergessen)
begin
  Inc(FormShowCount); // Hier wird die var "FormShowCount" um 1 addiert
end;

end.

Nun kannst du in deinem Programm imm die var "FormShowCount" abfragen, um herauszufinden wie oft deine Form schon angezeigt wurde...

rollstuhlfahrer 18. Aug 2008 18:27

Re: Ich würde gerne mitzählen, wie oft Form1 geöffnet wurde!
 
HI,

der Hinweis war nicht bös gemeint. Du hast nur in "Einen Beitrag zur CodeLib hinzufügen" gepostet. Dein Thema gehört dort nicht hin, oder soll es etwa in die CodeLib aufgenommen werden?
Dann: Du nimmst das Event OnShow von der Form und Zählst dort zu einer globalen Variable 1 dazu. Im Event OnHide kannst du dies dann um 1 vermindern und schon weißt du, wie oft die Form sichtbar ist. Wenn du jetzt wissen möchtest, wie oft dein Programm geöffnet worden ist, musst du dir die Prozessliste zu gemüte führen und beim durchgehen einfach mitzäglen, wi oft dein Programm genannt wurde.

Bernhard

EDIT: Was sollen diese Zeilen denn?
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
ProgressBar1.StepIt;
  if ProgressBar1.Position < 1 then
    Close;
end;
Entweder ProgressBar1.Min ist weit unter 0 oder dein Programm wird beim ersten Aufruf beendet. Dafür kannst du auch gleich Close nehmen.

mkinzler 18. Aug 2008 18:51

Re: Ich würde gerne mitzählen, wie oft Form1 geöffnet wurde!
 
Zitat:

Das ist aber eine Unterstützung für Anfänger!!
Bin nicht vom Himmel gefallen !

Ist dieses Forum nur für Profis ????
Nein aber etwas Grundlagenwissen und Eigeninitiative kann man schon erwarten.
lbccaleb hat in #2 die Vorgehensweise ja schon skizziert. Anstatt dir darüber Gedanken zu machen, fragst du frech nach Code.
Unter http://www.delphi-treff.de/tutorials/grundlagen/ findest du Grundlagen-Tutorials.

Roachford 18. Aug 2008 19:03

Re: Ich würde gerne mitzählen, wie oft Form1 geöffnet wurde!
 
Technik05: Geb deine Delphiversion an, damit man dir passend helfen kann!

Die Lösung einer globalen Variable ist die denkbar schlechteste und ab BDS2006 auch definitiv besser lösbar:

Delphi-Quellcode:
  TForm1 = class(TForm)
  private
    class var FormShowCount: integer;
   
    var
  ...
  end;

technik05 18. Aug 2008 19:11

Re: Ich würde gerne mitzählen, wie oft Form1 geöffnet wurde!
 
Nun kannst du in deinem Programm imm die var "FormShowCount" abfragen, um herauszufinden wie oft deine Form schon angezeigt wurde

wie mache ich das ?????


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:45 Uhr.
Seite 1 von 4  1 23     Letzte »    

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 by Thomas Breitkreuz