نحوه استفاده از فایل استریم procedure SaveFile(const FileName: TFileName; const content: string); var Stream: TFileStream; begin Stream := TFileStream.Create(FileName, fmCreate); try Stream.Write(Pointer(content)^, Length(content)); except Stream.Free; raise; end; Stream.Free; end; Sample call: SaveFile("test.txt", "ABC"); // Stores "ABC" in the file "test.txt"
با استفاده از این تابع می توانی در یک خانه فوکوس کنی
procedure TFactorBuyForm.Select_cell(Col,Row:integer);
var
myRect: TGridRect;
begin
myRect.Left := col;
myRect.Top := Row;
myRect.Right := myRect.Left;
myRect.Bottom := myRect.Top;
FactorGrid.Selection := myRect;
FactorGrid.SetFocus;
end;
برای استفاده از کرسر در یک فایل رسورس...ابتدا باید فایل ریسورس را بسازیم.
{$R CURSORS.RES}
screen.cursors[1]:=LoadCursor(HINSTANCE,makeintresource(133));
shape1.cursor := 1;
می خواهیم گوشه های فرم برنامه هلالی شکل باشد و فرمم مستطیلی نباشد
var r:hrgn;
begin
// baray boridan goshe form
r:=CreateEllipticRgn(-15,-15,width+15,height+15);
setwindowrgn(handle,r,true);
// baray bargardandan be halat aady
setwindowrgn(handle,0,true);
delete(r);
برای استفاده ایجاد صدا از یک فایل ریسورس(َARNLOD نام مستعار فایل در Sound.rc)
ARNOLD WAVE "Hasta.Wav" در فایل rc
{$R SOUNDS.RES}
PlaySound(PChar("ARNOLD"), hInstance, snd_Sync or snd_Resource);
برگرفته شده از سایت دنیای برنامه نویسی دلفی(http://mt85.blogfa.com)
از این کد برای undo در memo استفاده می شود
Memo1.Perform(EM_UNDO, 0, 0);
از این کد برای منتقل کردن focus به کنترل بعدی استفاده می شود
begin
if Key = #13 then { if it"s an enter key }
begin
Key := #0; { eat enter key }
Perform(WM_NEXTDLGCTL, 0, 0); { move to next control }
end
end;
برای اجرای برنامه ها از طریق کد نویسی
WinExec(PChar("notepad.exe"),SW_SHOWNORMAL); {Ejecuta el Notepad.Exe}
برای نمایش popup menu به وسیله کد
PopUpMenu1.popup(100,100)
یک تابع برای تبدیل بایرنری به مبنای ??:
function BinToInt(Value: String): Integer;
var
i,Size: Integer;
begin
Result:=0;
Size:=Length(Value);
for i:=Size downto 1 do
if Value[i]="1" then Result:=Result+(1 shl (Size-i));
end;
یک تابع برای تبدیل مبنای ?? به مبنای شانزده:
function IntToHex2( n:integer ):string;
const hex:array [0..15] of char
=("0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F");
begin
while n<>0 do begin
result:=hex[ 15 and n ]+result; {=(n mod 15)}
n:=n shr 4; end; {=n div 16}
end;
این تابع برای عوض کردن مشخصات همه کامپوننت ها در یک فرم است:
procedure TForm1.SetReadOnly(Value:boolean) ;
var
PropInfo : PPropInfo;
Component : TComponent;
i : integer;
begin
for i := 0 to ComponentCount - 1 do begin
Component := Components[ i ];
if Component is TControl then begin
PropInfo := GetPropInfo( Component.ClassInfo, "ReadOnly" );
if Assigned( PropInfo ) and
( PropInfo^.PropType^.Kind = tkEnumeration ) then
SetOrdProp( Component, PropInfo, integer( Value ) );
end;
end;
end;
این تابع برای حذف کلیه یک فولدر با کلیه فایل ها داخل آن:
procedure TForm1.Button1Click(Sender: T);
var
DirInfo: TSearchRec;
r : Integer;
begin
r := FindFirst("C:\Download\Test\*.*", FaAnyfile, DirInfo);
while r = 0 do begin
if ((DirInfo.Attr and FaDirectory <> FaDirectory) and
(DirInfo.Attr and FaVolumeId <> FaVolumeID)) then
if DeleteFile(pChar("C:\Download\test\" + DirInfo.Name))
= false then
{Si no puede borrar el fichero}
ShowMessage("Unable to delete : C:\Download\test\" +
DirInfo.Name);
r := FindNext(DirInfo);
end;
SysUtils.FindClose(DirInfo);
if RemoveDirectory("C:\Download\Test") = false then
{Si no puedes borrar el directorio}
ShowMessage("Unable to delete dirctory : C:\Download\test");
end;
از این تابع برای بدست آوردن UserNameکسی که Login کرده است استفاده می شود.
function GetUserName : String;
var
pcUser : PChar;
dwUSize : DWORD;
begin
dwUSize := 21;
GetMem( pcUser, dwUSize );
try
if Windows.GetUserName( pcUser, dwUSize ) then
Result := pcUser
finally
FreeMem( pcUser );
end;
procedure TForm1.Button1Click(Sender: T);
function PalabraAleatoria(Longitud: integer): string;
const
Letras = "01234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var
n : integer;
begin
Result:="";
for n:=1 to Longitud do Result:=Result+Letras[1+Random(Length(Letras))];
end;
begin
Caption:=PalabraAleatoria(10);
end;
از طریق این تابع می توانید یک فایل لینک از برنامه مورد نظر خود ایجاد کنید
procedure TForm1.Button1Click(Sender: T);
procedure CreaLnk( Exe,
Argumentos,
DirTrabajo,
NombreLnk,
DirDestino:string);
var
Objeto: IUnknown;
UnSlink: IShellLink;
FicheroP: IPersistFile;
WFichero: WideString;
begin
Objeto := CreateCom(CLSID_ShellLink);
UnSlink := Objeto as IShellLink;
FicheroP := Objeto as IPersistFile;
with UnSlink do
begin
SetArguments( PChar(Argumentos) );
SetPath( PChar(Exe) );
SetWorkingDirectory( PChar(DirTrabajo) );
end;
WFichero := DirDestino + "\" + NombreLnk;
FicheroP.Save(PWChar(WFichero),False);
end;
begin
CreaLnk( "c:\windows\Notepad.exe", {File Exe}
"c:\Autoexec.bat", {Arguments}
"c:\", {Diretory Base (For Search File Source)}
"Editor Autoexec.lnk", {File Name Link Output}
"c:\" {Output Directory}
);
end;
یک ساعت فوق العاده
اضافه کردن زبان فارسی به ویندوز XP
یک Message Dialog با امکان تغییر نوشته ی دکمه و تمام قسمتها
بستن پنجره
پاک کردن برنامه به وسیله ی خودش
دانلود کردن سورس یک سایت
بدست آوردن آدرس جاری IE
پاک کردن آدرسهای IE
آموزش کار با IntraWeb در دلفی
مبدل ها
تصویر به bmp2icon) Icon)
تشخیص اینکه HARD DISK ما چند درایو دارد.
اینم یک برنامه ای که ICON درایوها را تغییر می دهد.
درست کردن فیلتر زرد رنگ روی ایمیج
[همه عناوین(126)][عناوین آرشیوشده]
بازدید دیروز: 8
کل بازدید :87577
در این وبلاگ سعی میکنم مطالب مربوط به برنامه نویسی دلفی ، پاسکال و گرافیک رایانه ای 2 بعدی و 3 بعدی را به روز کنم منتظر سوالات شما نیز هستم
قویترین سایت دانلود رایگان نرم افزار [18]
دانلود رایگان نرم افزار [39]
دایره المعارف فارسی رایانه [22]
اخبار فناوری 2 [29]
فروش انواع نوت بوک [32]
کتابخانه مجازی ایران [25]
مقالات آماده کامپیوتری [33]
بزرگترین سایت دانلود3 [73]
اخبار فناوری 1 [18]
خفن ترین کدهای جاوا اسکریپت [29]
قیمت انواع سخت افزار2 [34]
آخرین قیمت سخت افزار ها [23]
دانلود کتاب های فارسی [49]
علم الکترونیک و کامپیوتر [28]
[آرشیو(20)]