Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
hido
Üye
Mesajlar: 268 Kayıt: 29 Mar 2014 04:32
Mesaj
gönderen hido » 14 Şub 2015 08:00
Merhaba,
Bilgisayarı kapatmaK için ufak bir program yazıyorum progressbar kullanarak bilgisayarın kapanmasına son iki dakika kalınca progressbar ile kalan süreyi nasıl eşitleyebilirim...
Kod: Tümünü seç
begin
ProgressBar1.Position := ProgressBar1.Position + 1;
end
else
begin
if (TimeToStr(Basla) = TimeToStr(Bitis)) then
begin
Winexec('shutdown -s -t 0 -f -c "Bilgisayar Kapanıyor"', sw_normal);
end;
end;
end;
except
end;
end;
Hashirama
Üye
Mesajlar: 81 Kayıt: 26 Kas 2013 03:42
Mesaj
gönderen Hashirama » 14 Şub 2015 11:38
Şu şekilde bi şey yapılabilir.
Kod: Tümünü seç
unit Unit1;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ComCtrls, Vcl.ExtCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
ProgressBar1: TProgressBar;
Edit1: TEdit;
Label1: TLabel;
Timer1: TTimer;
procedure Button1Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
kalan_sure:integer;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
kalan_sure:=strtoint(edit1.Text)*60;
timer1.Enabled:=true;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
timer1.Enabled:=false;
ProgressBar1.Min:=0;
ProgressBar1.Max:=120;
FormStyle:=fsStayOnTop;
ProgressBar1.Step:=1;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
dec(kalan_sure) ;
button1.Caption:=inttostr(kalan_sure) ;
if kalan_sure<120 then
begin
ProgressBar1.Position:=kalan_sure; // geri sayım
// ProgressBar1.Position:=120 -kalan_sure; //ileri sayım için
end;
if kalan_sure=0 then
Begin
Timer1.Enabled:=false;
Winexec('shutdown -s -t 0 -f -c "Bilgisayar Kapanıyor"', sw_normal);
End;
end;
end.