AGB  ·  Datenschutz  ·  Impressum  







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

Analoguhr

Ein Thema von MrFish · begonnen am 25. Apr 2004 · letzter Beitrag vom 11. Mai 2007
Antwort Antwort
Seite 2 von 5     12 34     Letzte »    
MrFish
Registriert seit: 16. Jul 2003
Ich habe ein Programm für eine Analoguhr geschrieben.
Es ist nur eine Übung gewesen, da ich noch Anfänger bin und mir Delpi selber beibringe.
Ich würde mich freuen wenn ihr mal drüberschaut und sagt was ihr davon haltet.
Delphi-Quellcode:
 unit Uhr;

interface

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

type
  TAnaloguhr = class(TForm)
    Edit1: TEdit;
    Uhr: TTimer;
    procedure UhrTimer(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Analoguhr: TAnaloguhr;
  SecWinkel : integer;
  MinWinkel : Integer;
  StdWinkel : Integer;
  SecWinkelAlt : integer;
  MinWinkelAlt : integer;
  StdWinkelAlt : integer;
  Zeit : String;
  XPos : integer;
  YPos : Integer;
  Std : Integer;
  Min : Integer;
  Sec : Integer;


implementation

{$R *.dfm}

procedure TAnaloguhr.UhrTimer(Sender: TObject);


begin
{---------------Systemzeit auslesen und zuweisen -------------------}

Zeit := TimeToStr(Time);
Edit1.Text := Zeit;
Std := StrToInt(Copy(Zeit,1,2));
Min := StrToInt(Copy(Zeit,4,2));
Sec := StrToInt(Copy(Zeit,7,2));

{-------------Zeigerwinkel berechnen--------------------------------}

SecWinkel := (( 6 * Sec)+90);
MinWinkel := (( 6 * Min)+90);
StdWinkel := ((30 * Std)+90);

{------------Zeiger Löschen-----------------------------------------}
{-------------Sekunde-----------------------------------------------}

XPos := Trunc (cos(SecWinkelAlt * Pi /180) *(-100));
YPos := Trunc (sin(SecWinkelAlt * Pi /180) *(-100));

Canvas.MoveTo(150,150);
Canvas.Pen.Color := clBtnFace;
Canvas.Pen.Width := 1;
Canvas.LineTo((XPos + 150),(YPos + 150));

{--------------Minuten---------------------------------------------}

XPos := Trunc (cos(MinWinkelAlt * Pi /180) *(-100));
YPos := Trunc (sin(MinWinkelAlt * Pi /180) *(-100));

Canvas.MoveTo(150,150);
Canvas.Pen.Color := clBtnFace;
Canvas.Pen.Width := 3;
Canvas.LineTo((XPos + 150),(YPos + 150));

{--------------Stunde----------------------------------------------}

XPos := Trunc (cos(StdWinkelAlt * Pi /180) *(-80));
YPos := Trunc (sin(StdWinkelAlt * Pi /180) *(-80));

Canvas.MoveTo(150,150);
Canvas.Pen.Color := clBtnFace;
Canvas.Pen.Width := 3;
Canvas.LineTo((XPos + 150),(YPos + 150));


{-------------Zeiger Zeichnen---------------------------------------}
{-------------Sekunde-----------------------------------------------}

XPos := Trunc (cos(SecWinkel * Pi /180) *(-100));
YPos := Trunc (sin(SecWinkel * Pi /180) *(-100));

Canvas.MoveTo(150,150);
Canvas.Pen.Color := 0;
Canvas.Pen.Width := 1;
Canvas.LineTo((XPos + 150),(YPos + 150));

{--------------Minuten---------------------------------------------}

XPos := Trunc (cos(MinWinkel * Pi /180) *(-100));
YPos := Trunc (sin(MinWinkel * Pi /180) *(-100));

Canvas.MoveTo(150,150);
Canvas.Pen.Color := 0;
Canvas.Pen.Width := 3;
Canvas.LineTo((XPos + 150),(YPos + 150));

{--------------Stunde----------------------------------------------}

XPos := Trunc (cos(StdWinkel * Pi /180) *(-80));
YPos := Trunc (sin(StdWinkel * Pi /180) *(-80));

Canvas.MoveTo(150,150);
Canvas.Pen.Color := 0;
Canvas.Pen.Width := 3;
Canvas.LineTo((XPos + 150),(YPos + 150));

{------------Alte Winkel Zwischenspeichern-------------------------}

SecWinkelAlt := SecWinkel;
MinWinkelAlt := MinWinkel;
StdWinkelAlt := StdWinkel;


end;

end.


Dank
Gruß MrFish
Es gibt zwei unbestreitbare Tatsachen: 1. Ich irre mich nie. 2. Die Welt ist eine Scheibe.
 
FlorianK

 
Delphi 7 Personal
 
#11
  Alt 26. Apr 2004, 17:33
Zitat von MrFish:
bis ich das verstanden habe was alles zu einem Delphi Projekt gehört wird wohl noch eine Zeit vergehen.
Das glaube ich leider auch!

Es fehlt die "Analoguhr.dfm".

Florian K.
Florian K.
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus
 
#12
  Alt 26. Apr 2004, 17:44
[Großes OT für MrFish]
Folgende Dateien gehören zu einem Projekt:
Entwicklungsdateien:
1. <Projektname>.dpr: Die Projektdatei, welche dir das Mainform erzeugt und anzeigt.
2. <Projektname>.res: Die Datei, welche das Symbol der Anwendung beinhaltet
3. <Unitname>.pas: Die Quellcodedatei einer Unit
4. <Unitname>.dfm: Gibt es nur wenn die dazugehörige pas-Datei ein Form beinhaltet, diese Datei enthält die Definitionen des Forms
5. <Projektname>.exe und <Unitname.dcu> entstehen nur durch das Kompilieren; diese musst du nicht weitergeben (außer die exe vielleicht )
[/OT]
Ich hoffe das hilft dir
Andreas B.
  Mit Zitat antworten Zitat
MrKnogge

 
Delphi 2007 Professional
 
#13
  Alt 26. Apr 2004, 17:44
pack doch einfach den gesamten Projekordner in ne zip-file !?
Christian Bootz
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber

 
Delphi XE Professional
 
#14
  Alt 26. Apr 2004, 17:52
Hi!

@MrKnogge:
Das wird wohl in dem Fall nicht reichen, weil die pas-Datei wie oben beschrieben, gaanz woanders liegt.

Ciao fkerber
Frederic Kerber
  Mit Zitat antworten Zitat
MrFish

 
Delphi 7 Personal
 
#15
  Alt 26. Apr 2004, 22:24
Zunächt mal danke für eure Antworten.

@Jens Schumann
Das mit dem Geltungsbereich ist klar, aber den Begriff Objektfeld höre ich zum ersten mal. Wo liegt der Unterschied zu normalen Variablen?

@alcaeus
Kritik wollte ich haben. Danke

@all
Ihr habt alle mitbekommen das ich Probleme habe die Bestandteile eines Projektes zu finde. Wie bekomme ich Delphi dazu alles in einem Ordner abzulegen?
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber

 
Delphi XE Professional
 
#16
  Alt 27. Apr 2004, 05:22
HI!

Projekt speichern unter
speichern unter

jeweils in den selben, vorher neu erstellten Ordner, dann iss alles drin, was rein muss.

Ciao fkerber
Frederic Kerber
  Mit Zitat antworten Zitat
XeRo

 
Delphi 7 Enterprise
 
#17
  Alt 27. Apr 2004, 16:33
Am besten wenn du ein neues project anfängst gleich mal: datei --> alles speichern...

und dann in einen zuvor! angelegten ordner.


ps.: hab deinen code mal genommen und alles zusammengepackt (siehe anhang)...hoffe du bist nicht böse


Angehängte Dateien
Dateityp: zip mrfish_analoge_uhr.zip (201,0 KB, 170x aufgerufen)
  Mit Zitat antworten Zitat
Michael Leyhe

 
Delphi 7 Enterprise
 
#18
  Alt 27. Apr 2004, 16:41
@ XeRo HAHA Jetzt funktioniert die Uhr.

Vielleicht sollte man noch einen Kreis um die ganze uhr machen
Michael
  Mit Zitat antworten Zitat
XeRo

 
Delphi 7 Enterprise
 
#19
  Alt 27. Apr 2004, 16:43
Zitat von Michael Leyhe:
@ XeRo HAHA Jetzt funktioniert die Uhr.
Das hat sie vorher auch schon...

p.s.: mir ist gerade aufgefallen, dass ich bei der Timer procedure 2 mal begin geschrieben hab
  Mit Zitat antworten Zitat
Michael Leyhe

 
Delphi 7 Enterprise
 
#20
  Alt 27. Apr 2004, 16:47
Zitat:
Michael Leyhe hat folgendes geschrieben:
@ XeRo HAHA Jetzt funktioniert die Uhr.


Das hat sie vorher auch schon...
Habe mich falsch ausgedrückt meinte das jetzt alles komplett ist.
Michael
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 5     12 34     Letzte »    


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 21:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz