| English | صفحه اصلي | گالري عكس | VisualBasic | Delphi | Librery | بانك مقاله | وبلاگ ديگرم |
| TopMenue_>> | VBLarn:: | Package:: | BestPost:: | DelphiLarn:: | LarnPost_2:: | calegeDoc:: | Archive:: | FarsiPost:: | LastPost:: | BestPost_2 |
کارشناسی کامپیوتر
برنامه ساختمان داده
سوالات کنکور کارشناسی
دانلود سورس متور 3D
CPP
C#
new
Ebook
Java
براي ايجاد يك فرم شفاف مي توانيد از كدي مانند مانند كد زير در برنامه تان استفاده كنيد:
procedure TForm1.FormCreate(Sender: TObject);
begin
Form1.Brush.Style := bsClear;
Form1.BorderStyle := bsNone
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
Application.Terminate;
end;
منبعدانشکده فنی اهر
لينك مقاله |11:2 شنبه 18 فروردین1386 - توسط ناصر نيازي
سلام پست امروز در پاسخ به دوست عزيزم مهرداد هست Begin كد مر بوط به MouseMove عكس begin كد مربوط به MousUp عكس var end;//------+By:Nasservb.blogfa.com خوب چطور بود Private Sub Form_Load() يه موقع سوال داشتي رودربايستي نكني مارو از خودت بدون --پست اصلاح شد
ببخشيد دير متوجه ايميل تون شدم آخه ياهو رو خيلي دير دير چك مي كنم .عزيزان سعي كنيد ايميل هاتون رو به جيميل بفرستيد
سوال چطور مي شه روي يك تصوير در دلفي زوم كرد و بعد روي اون گرايد(تور)انداخت
يك فرم خالي با يه PictureBox ايجاد كنيد
عكس دلخواه تون رو توي كادر عكس بندازيد وكد زير رو بنويسيد
در كد لواد فرم كد زير را بنويسيد
Picture1.AutoRedraw:=True;
End
try
if (Button<>2) Then
exit;
except
end;//-------Zoom On Picture
Picture1.PaintPicture Picture1.Picture( ,0,X,Y);
end;
a:TPanel;
begin
try
if(Button<>2) then//--RightClick Code
exit;
except
end;
Picture1.ForeColor:=RGB(0,230,0);//---GridLine Color
i:=(1)-(300);//---Space In 2GridLine
while true do begin
i:=1+(300);
if (i>(Picture1.Height+1000)) then break;
Picture1.line(0,i)-(Picture1.width,i);
Picture1.line(i,0)-(i,Picture1.height);
end;
//-------Save Picture
a:=Picture1;
a.Picture=:=a.image;
SavePicture a.Picture(,'C:\1.jpg);
end;
كد مربوط به همين برنامه در وي بي
Picture1.AutoRedraw = True
End Sub
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
On Error Resume Next
If Button <> 2 Then Exit Sub
'----- Zomm On Picture
Picture1.PaintPicture Picture1.Picture, 0, 0, X, Y
End Sub
Private Sub Picture1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
On Error Resume Next
If Button <> 2 Then Exit Sub '---RightClick Code
Picture1.ForeColor = RGB(0, 230, 0) '----GridLine Color
For i = 1 To Picture1.Height + 1000 Step 300 '--Step is Space in 2 GridLine
Picture1.Line (0, i)-(Picture1.Width, i)
Picture1.Line (i, 0)-(i, Picture1.Height)
Next
'-------- Save Picture
Dim a As PictureBox
a = Picture1
Set a.Picture = a.Image
SavePicture a.Picture, "C:\1.jpg"
End Sub
----------+ By:NasserNiazy--nasservb.blogfa.com +------- '
لينك مقاله |10:37 پنجشنبه 16 فروردین1386 - توسط ناصر نيازي
سلام بعد از يه مدت وي بي نويسي نمي دونم با چه رويي دارم دلفي مينويسم .آخه دلفي نت ام پريده بود
دوباره نصب اش كردم.چطور يك آرايه در دلفي ايجاد كنيم
آرايه كه خودتون تقربآ واردين چيه!.يه سري متغير هم نام كه فقط انديس هلشون با هم فرق داره.وبه صورت زير تعريف مي شن
Var ArrayName:[MinIndex ..MaxIndex] Of ArrayType;
آرايه در جايي استفاده مي شه كه بخوايم با يه حلقه تمام متغيير هارو كنترل كنيم
(دستورات بالا در پاسكال هم قابل استفاده است)
مثال دقيق تعريف آرايه
Var Num:[1..12]Of Integer;
مثال يك برنامه كاربردي
Var
Num:[1..20]Of Integer;
G :Real;
I:Integer;
Begin
G:=Edit1.Text;
For i:= 1 to 20 Do
Begin
if Num[i]=G then Break;
Edit2.text:="Not Found!";
End ;
if Edit.text="" then Edit2.text:=Num[i];
End;
اميدوارم غلط نداشته باشه
آرايه ها مي توانند چندين بعد داشته باشند.آرايه هاي دو بعدي خيلي مرسومند.بيشتر از دو بعد زياد استفاده نمي شود چون كنترل آن سخت مي شه
با اين وجود دلفي توانايي ايجاد آرايه تا شصت بعد رو هم داره.آرايه چند بعدي به اين صورت تعريف مي شه
Var Num:[MinIndex..MaxIndex,MinIndex .. MaxIndex,...]Of Integer
حال يك مثال از آرايه د بعدي مي زنم چاپ جدول ضرب
Var
N1[1..10,1..10] Of Integer;
I,J:Integer
Begin
For i:=1 to 10 Do
For j:=1 to 10 Do Begin
N1 [i,j]:=i*j ;
Form1.Canvas.TextOut(i*20, j*20, inttostr(N1[i, j]));
End;End;
در تنظيم نوع آرايه مي توان از مجموعه و ركورد و حتي آرايه ي ديگر استفاده كرد
تمام آرايه هاي بالا استاتيك بودند .يعني طول انها ثابت بود اما اگر طول دقيق آرايه را در اول برنامه ندانيم
در اين صورت بايد از آرايه هاي ديناميك استفاده كنيم.در اين صورت طول آرايه را در اول برنامه نمي نويسيم
و در داخل برنامه آنرا مقدار دهي مي كنيم.مثال
Var
B1:Array Of Integer;
i:Integer;
Begin
For i:=1 to 10
Begin
B1:=Nil;
SetLength(B1,i);
End;End
در خط مشخص شده طول آرايه با مقدار صفر تا شمارنده حلقه برابر مي شود و در خط قبلش طول آرايه حذف مي گردد
لينك مقاله |14:53 دوشنبه 23 بهمن1385 - توسط ناصر نيازي
قبل از شروع مطلب اين نكته را متذكر مي شوم كه اين سري مقالات براي افرادي كه آشنايي اوليه با برنامه نويسي و ترجيحاً برنامه نويسي تحت ويندوز دارند مفيد تر مي بلشد چون آموزش جزئيات بيشتر در حوصله اين سري مقالات نمي گنجد.
براي نوشتن كدهاي آزمايشي اين بخش كارهاي زير را انجام بدهيد:
دلفي را اجرا كنيد.
اگر پروژه جديدي به طور خودكار باز نشد، File|New Project را از منوي دلفي انتخاب كنيد.
Project|Options|Linker را انتخاب كنيد، كادر مكالمه Generate Consol Application را انتخاب كنيد، و سپس OK را به وسيله ماوس انتخاب كنيد. اين كار براي دلفي مشخص مي كند برنامه اي كه ايجاد مي كنيد، يك برنامه پنجره دار نيست، بلكه برنامه اي از نوع «پنجرهDos » است.
View|Project Source را انتخاب كنيد، متن اصلي پروژه در پنجره ويراستار قابل رويت خواهد بود. اگر چه اين متن عموماً ويرايش نمي شود، اما در اين حالت بايد اين متن را با متن خودتان جايگزين كنيد. اين يك روش آسان براي ايجاد يك برنامه است
زمانيكه برنامه را اجرا مي كنيد، حاصل آن در پنجره خودش ظاهر مي شود. براي بستن پنجره خروجي، Alt+F4 را فشار دهيد، يا x را از گوشه بالايي پنجره خروجي انتخاب كنيد.
نكته اي كه در اينجا وجود دارد. زماني كه متن قديمي را با متن برنامه خود جايگزين مي كنيد، پروژه را ابتدا با نام جديدي ذخيره كنيد، و يا خط Program پروژه را تغيير ندهيد.
كنترل جريان برنامه:
دلفي دو ساختار براي كنترل جريان برنامه دارد كه به تفصيل به آنها مي پردازيم.
دستور If...Then...Else
اين دستور از اساسي ترين دستورات شرطي مي با شد كه اين امكان را به برنامه نويس مي دهد كه پرسشي را مطرح كرده و بر اساس پاسخ آن كار يا عمل درخواستي را انجام دهد. مثالي در اين رابطه:
program IfDemo;
uses Forms;
var UserInput : Integer;
begin
Write('How old are you ? ');
ReadLn(UserInput);
If (UseerInput < 1) or (UserInput > 130) Then
WriteLn('You are not telling the truth.')
Else
WriteLn('Being ', UserInput, 'yers old is great!');
WriteLn('Press Enter to Exit program');
ReadLn {To keep the window from closing until you press Enter}
end {InDemo}
در برنامه فوق عبارت بين If...Then در صورتي كه عدد ورودي توسط كاربر كوچكتر از 1 يا بزركتر از 130 باشد برابرTrue شده در نتيجه كد نوشته شده بين Then...Else اجرا مي شود. در غير اين صورت عبارت بعد از Else اجرا مي شود.
درصورتي كه بخواهيم بيش از يك دستور را بين Then...Else و يا بعد ازElse قرار دهيم بايد از يك بلاك استفاده كنيم
بلاك:
مجموعه اي از دستورات كه بين Begin...End واقع مي شوند.
دستور Case...of
همانند دستور If...Then مي باشد ولي با اين تفاوت كه بجاي دو حالت True و False چند حالت را بررسي مي كند. براي تشريح اي ساختار به مثال زير توجه كنيد.
program CaseDemo;
Uses Forms;
var UserIn : Char;
begin
Write('Type in character followed dy the Enter key: ');
ReadLn(UserIn);
Case UserIn of
'a' :WriteLn('That is a Small a');
'z','Z':WriteLn('That is a small or capital z')
else
WriteLn('That is a character other than an a, z, or Z.')
end;
WriteLn('Press Enter to exit program');
ReadLn {To keep the window from closing until you press Enter}
end {CaseDemo}
در مثال فوق در صورتي كه مقدار بين Case...of برابر با هر يك از ثابتهاي قبل از علامت (:) باشد، دستور يا بلاك دستورات بعد از علامت (:) اجرا مي شود. همچنين، توجه به اين امر كه يك دستور end در پايان به عنوان پايان بخش دستور Case قرار مي گيرد نيز بسيار مهم است. در ضمن قسمت else نيز در اين ساختار اختياري بوده و مي تواند حذف شود.
لينك مقاله |20:46 یکشنبه 1 بهمن1385 - توسط ناصر نيازي
كاربرد علامت تساوي در دلفي:
در دلفي براي تخصيص عملگر =: استفاده مي شود.
y:=mx+b
همچنين براي بررسي تساوي از = استفاده مي شود.
If A=B then Writeln ('A and B are equal')
شكل ديگر استفاده از علامت تساوي در معرفي ثابت ها است.
Const
TaxRate = 0.0075
ثابت ها:
براي مقادير خاص كه در برنامه زياد استفاده مي شود مي توان از ثابت ها استفاده كرد كه مثال آن در بالا آمده.
متغييرها:
ازاجزاء ثابت همه زبان ها كه انواع آن عبارتند از:
نوع صحيح:
نوع محدوده مقادير
تعداد بايت ها در حافظه
علامت دار(قادر به نگهداري عدد منفي است)
Byte 0 تا 255 1 خير Word 0 تا 65535 2 خير ShortInt 128- تا 127 1 بلي SmallInt 32768- تا 32768 2 بلي Integer 32147483648- تا2147483647 4 بلي Cardinal 0 تا 2147483647 4 بلي LongInt 2147483647- تا 2147483647 4 بلي
نوع حقيقي:
نوع محدوده مقادير
تعداد بايت ها در حافظه
Real +/-1.7E38 ~ +/-2.9E39
6 Single +/-1.5E-45 ~ +/-3.4E38
4 Double +/-5.0E-34 ~ +/-1.7E308
8 Extended +/-3.4E-4932 ~ +/-1.1E4932
10 Comp -2^63 ~ 2^(63-1)
8
نوع ارزي:
اين نوع متغيير ها براي نگهداري مقادير پولي مناسب است و با اجزاي ويژوال مانند Currency Field مورد استفاده قرار مي گيرد. باانواع دادههايي كه در بانك هاي اطلاعاتي براي مقادير پولي بكار مي رود سازگار است.
نوع بولي:
نوع محدوده مقادير
تعداد بايت ها در حافظه
Boolean يك بايتي ترجيحي 1 ByteBool يك بايتي 1 Bool يك كلمه اي 2 WordBool يك كلمه اي 2 LongBool يك كلمه اي مضاعف 4 نوع كاراكتري:
نوع اندازه بر حسب بايت
آنچه مي تواند نگه دارد
ANSIChar 1 يك كاراكتر ANSI WideChar 2 يك كاراكتر UniCode Char 1
نوع رشته اي:
نوع طول
آنچه مي تواند نگه دارد
آيا به تهي ختم مي شود يا خير
ShortString 255 ANSIChar خير AnsiString حداكثر 3 مگابايت ANSIChar بلي String يا255 يا حداكثر 3 گيگا بايت ANSIChar بلي يا خير WideString حد اكثر 1.5 گيگا بايت WideChar بلي
| نوشته شده توسط :shahab-s |
لينك مقاله |20:44 یکشنبه 1 بهمن1385 - توسط ناصر نيازي
چطور میتوان زمان کپی شدن فایل را با استفاده از ProgressBar نمایش داد؟
برای انجام این کار ابتدا بر روی یک فرم یک ProgressBar اضافه کنید سپس تابع زیر را تایپ کنید:
procedure TForm1.CopyFileWithProgressBar1(Source, Destination: string); var FromF, ToF: file of byte;
Buffer: array[0..4096] of char;
NumRead: integer;
FileLength: longint;
begin AssignFile(FromF, Source);
reset(FromF);
AssignFile(ToF, Destination);
rewrite(ToF);
FileLength := FileSize(FromF);
with Progressbar1 do
begin
Min := 0;
Max := FileLength;
while FileLength > 0 do
begin
BlockRead(FromF, Buffer[0], SizeOf(Buffer), NumRead);
FileLength := FileLength - NumRead;
BlockWrite(ToF, Buffer[0], NumRead);
Position := Position + NumRead;
end;
CloseFile(FromF);
CloseFile(ToF);
end;
end;
در این تابع شما در واقع فایل مبدا را خوانده و در مقصد مینویسید. حالا یک دکمه اضافه کرده کد زیر رو اضافه نمایید:
procedure TForm1.Button1Click(Sender: TObject); begin CopyFileWithProgressBar1('c:\Welcome.exe', 'c:\temp\Welcome.exe');
لينك مقاله |15:22 دوشنبه 11 دی1385 - توسط ناصر نيازي
|
چگونه میتوان کلید Scroll ماوس را برای DBGrid تعریف کرد؟
با استفاده از کد زیر میتوان این کار را کرد: private Delphi.blogfa.com |
لينك مقاله |15:21 دوشنبه 11 دی1385 - توسط ناصر نيازي
ناصرنيازي : با سلام به وبلاگ من خوش آمديد ، در اين وبلاگ هر گونه آموزش برنامه نويسي و دلفي انجام مي شود. جهت استفاده بيهنه از اين وبلاگ به آرشيو وبلاگ نيز سري بزنيد .بيش ازنيم مليون كتاب برنامه نويسي خارجي و10 هزاركتاب فارسي در اينجا و وبلاگ ديگر ما وتالار گفتگو شماره اس ام اس09189151266.با تشکر