Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Prism Mein erstes Projekt: Windows-Timer (https://www.delphipraxis.net/43300-mein-erstes-projekt-windows-timer.html)

Peter Piksa 1. Apr 2005 08:29


Mein erstes Projekt: Windows-Timer
 
Hallo zusammen!

Ich möchte um Delphi zu lernen, jetzt ein kleines Projekt programmieren.
Ich habe da auch schon eine Idee. Es soll nicht zu schwer und nicht zu einfach sein.

Also ich möchte ein kleines Tool programmieren, dass mir mein System zu einem bestimmten Zeitpunkt automatisch runterfährt.
Man soll wählen können zwischen den Optionen
a.) Nach xTagen xStunden xMinuten runterfahren und
b.) Um xx:xx Uhr herunterfahren.

Damit das Programm nicht immer einen Slot in der Taskbar einnimmt, sollte es sich noch in die Tray minimieren lassen.
Ein MouseOver soll verraten ob der Timer aktiviert ist und wie lange es noch dauert bis das System gute Nacht sagt.

Soweit so gut. Jetzt der Teil warum ich das hier im Forum poste!
Wie bereits gesagt: Mein erstes Delphi Projekt. Ich brauche also Hilfe.
(Keine Angst, ich habe keine reine Weste mehr was Programmierung angeht - Mit mir lässt sich also reden ;))

Würde sich jemand bereiterklären dieses Projekt mit mir durchzugehen?

Liebe Grüsse
Peter

perle 1. Apr 2005 08:37

Re: Mein erstes Projekt: Windows-Timer
 
joa würd ich wohl machen.

Peter Piksa 1. Apr 2005 08:48

Re: Mein erstes Projekt: Windows-Timer
 
Super! :bounce1:
Hast du den MSN Messenger?
(Ich hab auch ICQ, aber von hier aus kriege ich keine Verbindung... :()

perle 1. Apr 2005 09:41

Re: Mein erstes Projekt: Windows-Timer
 
ja hab ich iiirgendwann mal gehabt.....allerdings muss ich erstmal noch meine Zugangsdaten rausbekommen :) Ist schon lange her, dass ich dir mal gebraucht hab.

perle 1. Apr 2005 09:48

Re: Mein erstes Projekt: Windows-Timer
 
oh hab grade gesehen dass du das mit .Net machen willst, ich fürchte da kann ich dir doch nicht helfen sorry :(

Peter Piksa 1. Apr 2005 09:57

Re: Mein erstes Projekt: Windows-Timer
 
du, von mir aus kann ich das auch mit WinAPI machen.
Mir ist es gleich ob ich nun Delphi mit WinAPI oder .Net lerne.
Bist du bereit unter WinAPI mir dabei zu helfen?

3_of_8 1. Apr 2005 10:33

Re: Mein erstes Projekt: Windows-Timer
 
Nimm einen Timer mit Interval 1000 oder 10000.

Kopiere folgende Funktion unter das {R *.dfm} in deiner Unit: http://www.dsdt.info/tipps/?id=200.

Dann klicke doppelt auf den Timer, darauf wird ein OnTimer Ereignis geschrieben. Schreibe dort rein:
Delphi-Quellcode:
ExWindows(EWX_POWEROFF or EWX_FORCEIFHUNG);
EDIT: Sollte dann so aussehen:
Delphi-Quellcode:
procedure Timer1OnTimer(Sender: TObject);
begin
zeit:=zeit-1     //Das ist die Zeit die vergehen soll, bis Windows runtergefahren werden soll in Sek.
if zeit<=0 then
ExWindows(EWX_POWEROFF or EWX_FORCEIFHUNG);
end;

Orbmu2k 1. Apr 2005 10:36

Re: Mein erstes Projekt: Windows-Timer
 
Zitat:

Zitat von 3_of_8
Nimm einen Timer mit Interval 1000 oder 10000.

Kopiere folgende Funktion unter das {R *.dfm} in deiner Unit: http://www.dsdt.info/tipps/?id=200.

Dann klicke doppelt auf den Timer, darauf wird ein OnTimer Ereignis geschrieben. Schreibe dort rein:
Delphi-Quellcode:
ExWindows(EWX_POWEROFF or EWX_FORCEIFHUNG);

und dann am besten noch in den autostart ne veknüfung mit der exe ... nenene der 1. april lässt grüssen :)

3_of_8 1. Apr 2005 10:37

Re: Mein erstes Projekt: Windows-Timer
 
Tut mir leid, ich hab mich natürlich geirrt, habs schon korrigiert, wer will schon dass der PC jede Sekunde runtergefahren wird...

Peter Piksa 1. Apr 2005 10:42

Re: Mein erstes Projekt: Windows-Timer
 
ääh... ich habe mir ne neue Win32 anwendung ersellt und habe da jetzt ein leeres Formular.
Wie was wo muss ich denn jetzt reinkopieren?? :gruebel:

Orbmu2k 1. Apr 2005 10:47

Re: Mein erstes Projekt: Windows-Timer
 
Ich denke 3von8 war ein bischen übereifrig :)

Fang am besten erstmal mit dem Layout der Komponenten an also plaziere entsprechende Buttons , Edits , Labels etc auf deiner Form und gib ihnem aussagekräftige Namen.

Zum Thema Tray Icon würd ich dir die "CoolTrayIcon" Komponente empfehlen einfach mal http://www.torry.net suchen.

3_of_8 1. Apr 2005 10:55

Re: Mein erstes Projekt: Windows-Timer
 
Also: Oben in der Toolleiste wählst du "System" und dann "Timer". Dann klickst du auf eine beliebige Stelle des Formulars. (Den Timer sieht man nachher nicht.). Dann gehst du auf die Seite, die ich dir gesagt habe und kopierst den Quellcode in das Textfenster unter die Zeile {$R *.dfm}. Sie wird grün dargestellt. Dann klickst du doppelt auf den Timer und veränderst den Code so, dass er so aussieht wie ich es oben geschrieben habe. Klicke dann den Timer an und stelle die Eigenschaft Enabled (im Objektinspektor) auf False. Gehe dann oben auf "Standard" und "Button" und füge ihn an einer Stelle im Formular ein, die dir gefällt. Im Objektinspektor kannst du die Beschriftung unter Caption ändern, das gleiche geht auch mit dem Formular und allen anderen Komponenten mit Beschriftung. Dann klickst du doppelt auf den Button und veränderst den Code so, dass er so aussieht:
Delphi-Quellcode:
procedure Button1Click(Sender: TObject);
begin
timer1.enabled:=True; //Hiermit wird der Timer aktiviert (Diese Kommentare kannst du weglassen.
zeit:=20;
end;
Weiter oben, über {$R *.dfm} siehst du folgende Zeile: {Public-Deklarationen} Schreib darunter folgendes:

Delphi-Quellcode:
zeit: Integer;
Damit wird bei Klick auf den Button der PC nach 20 Sekunden heruntergefahren, du kannst zeit auf einen beliebigen Wert ändern.

Ich rate dir, dir mal ein paar Tutorials anzusehen und ich denke dass du dir ein ziemlich schweres Anfangsprojekt ausgesucht hast.


Natürlich ist das erst der Anfang. Wie gesagt, es gibt viele gute Tutorials für Delphi.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:16 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