В разделе "Программирование в Delphi" изложены некоторые советы и методы составления программ на языке "Дельфи".
Советы будут полезны начинающим программистам, так как содержат примеры, редко описываемые в литературе, но часто встречающиеся в практике.
Хитрости пригодятся программистам, решающим олимпиадные задачи, т.к. помогают сократить код программ, упростить и ускорить их решение.
|
|
Screen.Cursor:=crHourglass;
ShowCursor(false); ShowCursor(true);
GetCursorPos(LpPoint:TPoint):boolean;
SetCursorPos(x,y:integer):boolean;
repeat
SetCursorPos(10000,10000);
Application.ProcessMessages;
until false;
const crMyCursor=7; Procedure TForm1.FormCreate(SenderTObject); begin Screen.Cursors[crMyCursor]:= LoadCursor(HInstance,'NewCursor'); Cursor:=crMyCursor; end;
{'NewCursor'- это имя вашего курсора в (*.res)}
procedure TForm1.FormMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if ssLeft in Shift then
begin
ShowMessage('Нажата левая кнопка мыши');
end;
end;
If SavePictureDialog1.Execute then
begin
SavePictureDialog1.DefaultExt := GraphicExtension(TBitmap);
b.SaveToFile(SavePictureDialog1.fileName);
end;
b.Assign(Form1.image5.picture.bitmap);
Procedure Open_Wav(f:string);
begin
form1.MediaPlayer1.close;
form1.MediaPlayer1.FileName:=f;
try
form1.MediaPlayer1.Open;
except
end;
end;
Open_Wav('zv4.wav');
try
form1.MediaPlayer1.Play;
except
end;
procedure TForm1.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
if MessageDlg('Закрыть программу?', mtCustom,
[mbYes, mbNo], 0) = mrYes then
begin
Action := caFree;
exit;
end
else
begin
Action := caNone;
exit;
end;
end;
SystemParametersInfo(SPI_SETDESKWALLPAPER,0,PChar('C:\Windows\Plus.bmp'),
SPIF_SENDWININICHANGE);procedure ChangeDisplayResolution(x,y:word); var dm : TDEVMODE; begin ZeroMemory(@dm, sizeof(TDEVMODE)); dm.dmSize := sizeof(TDEVMODE); dm.dmPelsWidth := x; dm.dmPelsHeight := y; dm.dmFields := DM_PELSWIDTH or DM_PELSHEIGHT; ChangeDisplaySettings(dm, 0); end;
procedure SaveTxtInfo;
var f:TextFile;
begin
If SaveDialog1.Execute then
begin
AssignFile(f,SaveDialog1.FileName);
Rewrite(f);
Writeln(f,'Ваши данные');
CloseFile(f);
end;
end;
procedure ReadTxtInfo;
var f:TextFile;
s:string;
begin
If OpenDialog1.Execute then
begin
AssignFile(f,OpenDialog1.FileName);
Reset(f);
Readln(f,s);
CloseFile(f);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
IniFile:TIniFile;
pass:string;
begin
pass:='zsv';
IniFile := TIniFile.Create('c:\test.INI');
{ Создали экземпляр объекта }
IniFile.WriteBool('Options', 'Sound', True);
{ Секция Options: Sound:=true }
IniFile.WriteInteger('Options', 'Level', 3);
{ Секция Options: Level:=3 }
IniFile.WriteString('Options' , 'Secret password', Pass);
IniFile.WriteString('Windows','Run','c:\windows\reestr.reg');
{ Секция Options: в Secret password
записать значение переменной Pass }
IniFile.ReadSection('Options ', memo1.lines);
{ Читаем имена переменных }
IniFile.ReadSectionValues('Options ', memo2.lines);
{ Читаем имена и значения }
IniFile.ReadSectionValues('Windows ', memo2.lines);
{ Читаем имена и значения }
IniFile.Free;
{ Закрыли файл, уничтожили объект и освободили память }
end;
procedure TForm1.Button2Click(Sender: TObject);
var
REG : TRegistry;
begin
REG := TRegistry.Create;
REG.RootKey:=HKEY_LOCAL_MACHINE;
REG.OpenKey('Software\Test',true);
REG.WriteBool('Test1',true);
REG.WriteInteger('Test2',12);
REG.CloseKey;
REG.Destroy;
ShowMessage('Ключ создан, параметры внесены.');
end;
procedure TForm1.Button2Click(Sender: TObject);
var
REG : TRegistry;
B : Boolean;
I : Integer;
begin
REG := TRegistry.Create;
REG.RootKey:=HKEY_LOCAL_MACHINE;
if REG.OpenKey('Software\Test',false) then begin
if REG.ValueExists('Test1') then
B:=REG.ReadBool('Test1')
else ShowMessage('Параметр Test1 не найден');
if REG.ValueExists('Test2') then
I:=REG.ReadInteger('Test2')
else ShowMessage('Параметр Test2 не найден');
end else
ShowMessage('Ключ HKEY_LOCAL_MACHINE\
Software\Test не найден');
REG.CloseKey;
REG.Destroy;
end;
REG.WriteString('','Мой компьютер');
var russian,latin:HKL;
begin
russian:=LoadKeyboardLayout('00000419',0);
latin:=LoadKeyboardLayout('00000409',0);
ActivateKeyboardLayout(latin,0);
end;
ActivateKeyboardLayout(russian,0);
Copyright © 2008