Mengubah Resolusi Layar


Tips & Trik Delphi, Tips Belajar Delphi, Belajar Delphi Online
unit Unit1;

interface

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

type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
private
function SetScreenResolution(Width, Height: integer): Longint;
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
OldWidth, OldHeight: integer;

implementation

{$R *.DFM}

function
TForm1.SetScreenResolution(Width, Height: integer): Longint;
var
DeviceMode: TDeviceMode;
begin
with DeviceMode do
begin
dmSize := SizeOf(TDeviceMode);
dmPelsWidth := Width;
dmPelsHeight := Height;
dmFields := DM_PELSWIDTH or DM_PELSHEIGHT;
end;
Result := ChangeDisplaySettings(DeviceMode, CDS_UPDATEREGISTRY);
end;

procedure
TForm1.Button1Click(Sender: TObject);
begin
SetScreenResolution(640, 480);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin

//resolusi semula
SetScreenResolution(OldWidth, OldHeight);
end;

procedure
TForm1.FormCreate(Sender: TObject);
begin
OldWidth := GetSystemMetrics(SM_CXSCREEN);
OldHeight := GetSystemMetrics(SM_CYSCREEN);
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
SetScreenResolution(800, 600);
end;


procedure
TForm1.Button4Click(Sender: TObject);
begin
SetScreenResolution(1024, 768);
end;

end.

TransCODE Software

Menyimpan Posisi Form


Tips & Trik Delphi, Tips Belajar Delphi, Belajar Delphi Online
unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;

type

TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

uses IniFiles;

procedure TForm1.FormCreate(Sender: TObject);
var
INI: TIniFile;
begin
INI := TIniFile.Create(ChangeFileExt(ParamStr(0), ‘.INI’));
Top  := INI.ReadInteger(ClassName, ‘Top’, 0);
Left := INI.ReadInteger(ClassName, ‘Left’, 0);
INI.Free;
end;

procedure TForm1.FormDestroy(Sender: TObject);
var
INI: TIniFile;
begin
INI := TIniFile.Create(ChangeFileExt(ParamStr(0), ‘.INI’));
INI.WriteInteger(ClassName, ‘Top’, Top);
INI.WriteInteger(ClassName, ‘Left’, Left);
INI.Free;
end;

end.

TransCODE Software

Warna Teks Pada MessageDialog


Tips & Trik Delphi, Tips Belajar Delphi, Belajar Delphi Online
unit Unit1;

interface

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

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
MsgForm : TForm;
i : integer;
begin
MsgForm := CreateMessageDialog(‘Tulisan ini berwarna merah !!’, mtInformation, [mbOK]);
with MsgForm do
begin
for i:=0 to ComponentCount-1 do
if Components[i] is TLabel then
(Components[i] as TLabel).Font.Color := clRed;
ShowModal;
end;
MsgForm.Free;
end;

end.

TransCODE Software

Mengirim teks ke Notepad


Tips & Trik Delphi, Tips Belajar Delphi, Belajar Delphi Online
unit Unit1;

interface

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

type
TForm1 = class(TForm)
edt1: TEdit;
procedure edt1Change(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.edt1Change(Sender: TObject);
var
wnd: HWND;
i: Integer;
s: string;
begin
// mencari handle Notepad

wnd := FindWindow(‘notepad’, nil);
if wnd <> 0 then
begin
wnd := FindWindowEx(wnd, 0, ‘Edit’, nil);

// Teks yang akan dikirim
s := Edt1.Text;
// menulis teks pada Notepad
for i := 1 to Length(s) do
SendMessage(wnd, WM_CHAR, Word(s[i]), 0);
// simulasi tombol enter
PostMessage(wnd, WM_KEYDOWN, VK_RETURN, 0);
// simulasi tombol spasi
PostMessage(wnd, WM_KEYDOWN, VK_SPACE, 0);
end;
end;

end.

TransCODE Software

Mengecek Kecepatan CPU


Tips & Trik Delphi, Tips Belajar Delphi, Belajar Delphi Online
unit Unit1;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;

type
TForm1 = class(TForm)
lbl1: TLabel;
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

function GetCPUSpeed: Double;
const
DelayTime = 500;
var
TimerHi, TimerLo: DWORD;
PriorityClass, Priority: Integer;
begin
PriorityClass := GetPriorityClass(GetCurrentProcess);
Priority      := GetThreadPriority(GetCurrentThread);
SetPriorityClass(GetCurrentProcess, REALTIME_PRIORITY_CLASS);
SetThreadPriority(GetCurrentThread, THREAD_PRIORITY_TIME_CRITICAL);
Sleep(10);
asm
dw 310Fh
mov TimerLo, eax
mov TimerHi, edx
end;
Sleep(DelayTime);
asm
dw 310Fh
sub eax, TimerLo
sbb edx, TimerHi
mov TimerLo, eax
mov TimerHi, edx
end;
SetThreadPriority(GetCurrentThread, Priority);
SetPriorityClass(GetCurrentProcess, PriorityClass);
Result := TimerLo / (1000 * DelayTime);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
lbl1.Caption:=(Format(‘Kecepatan CPU anda adalah : %f MHz’, [GetCPUSpeed]));
end;

end.

TransCODE Software