آخرين ارسالات انجمنها

+ پاسخ به موضوع
صفحه 13 از 13 نخستنخست ... 3 11 12 13
نمایش نتایج: از شماره 193 تا 201 , از مجموع 201

موضوع: نکات برنامه نویسی در دلفی ‏

  1. #193
    کاربرسایت PARS PARS آواتار ها
    تاریخ عضویت
    May 2008
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: نکات برنامه نویسی در دلفی ‏


    نمایش مختصات مکان نمای موس
    کد:

    var
    pt:tpoint
    begin
    getcursorpos(pt);
    label1.caption:= 'X : '+inttostr(pt.x)+' , Y :'+inttostr(pt.y);
    end

  2. #194
    کاربرسایت PARS PARS آواتار ها
    تاریخ عضویت
    May 2008
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: نکات برنامه نویسی در دلفی ‏


    افزودن خصوصیت Read Only به یک فایل
    کد:

    function SetFileReadOnly (FileName: String; ReadOnly: Boolean = True): Boolean;
    begin
    if not FileExists (FileName) then
    Result := False
    else
    begin
    if ReadOnly then
    Result := SetFileAttributes (PChar (FileName), GetFileAttributes (PChar (FileName)) or FILE_ATTRIBUTE_READONLY)
    else
    Result := SetFileAttributes (PChar (FileName), FILE_ATTRIBUTE_NORMAL);
    end;
    end;

  3. #195
    کاربرسایت PARS PARS آواتار ها
    تاریخ عضویت
    May 2008
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: نکات برنامه نویسی در دلفی ‏


    تغییر خودکار زبان به فارسی در بعضی از Edit ها
    فرض کنید میخواهیم در پروژه خود کاربر بتواند بدون تغییر صفحه کلید (Alt + Shift)در برخی Edit ها امکان تایپ فارسی را داشته باشد

    برای این کار دو عمل ساده را باید انجام داد :

    ۱) معرفی زبان فارسی به پروژه

    ابتدا کد اصلی پروژه را باز کنید واین خط رابعد از خط Application.Initialize اضافه کنید یا در OnShow فرم اصلی این کد را بنویسید.

    Application.BiDiKeyboard:='00000429';

    ۲) تنظیم خاصیت BiDimode به حالت bdRightToLeft برای هر Edit مورد نظر

    حال پروژه را اجرا کنید.

    البته بجای Application.BiDiKeyboard:='00000429' میتوانید از کد زیر هم استفاده کنید :
    LoadKeyboardLayout(PChar('00000429'), KLF_ACTIVATE

  4. #196
    کاربرسایت PARS PARS آواتار ها
    تاریخ عضویت
    May 2008
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: نکات برنامه نویسی در دلفی ‏


    Reset کردن فرم ورود اطلاعات

    کدی برای پاک کردن Edit ها , DBEdit ها MaskEdit ها و Memo های یک فرم :

    کد:

    procedure clear_all;
    var
    cnt : integer;
    begin
    Try
    for cnt := 0 to Screen.ActiveForm.ComponentCount - 1 do
    begin
    if (Screen.ActiveForm.Components[cnt].ClassName = 'TEdit')
    AND (TEdit(Screen.ActiveForm.Components[cnt]).Tag = 0 ) then
    TEdit(Screen.ActiveForm.Components[cnt]).Clear
    else if (Screen.ActiveForm.Components[cnt].ClassName = 'TMaskEdit') then
    TMaskEdit(Screen.ActiveForm.Components[cnt]).Clear
    else if (Screen.ActiveForm.Components[cnt].ClassName = 'TDBEdit')
    AND (TDBEdit(Screen.ActiveForm.Components[cnt]).Tag = 0 ) then
    TDBEdit(Screen.ActiveForm.Components[cnt]).Clear
    else if (Screen.ActiveForm.Components[cnt].ClassName = 'TDBMemo') then
    TDBMemo(Screen.ActiveForm.Components[cnt]).Clear;
    end;
    Except
    // show error message
    end;
    end;
    از این تابع میتوان در دکمۀ "پاک کردن فرم" استفاده کرد.

  5. #197
    کاربرسایت PARS PARS آواتار ها
    تاریخ عضویت
    May 2008
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: نکات برنامه نویسی در دلفی ‏


    کد بستن Alt + F4 و On Top کردن فرم
    کد بستن Alt + F4 :

    کد PHP:
    if (key =VK_F4 ) And ( ssAlt in shift ) then Key:=0


    کد On Top کردن فرم :
    procedure TForm1.FormShow(Sender: TObject);
    begin
    SetWindowPos(Form1.Handle,HWND_TOPMOST,
    0, 0, 0, 0,
    SWP_NOMOVE or SWP_NOSIZE or SWP_SHOWWINDOW);
    end;

  6. #198
    کاربرسایت PARS PARS آواتار ها
    تاریخ عضویت
    May 2008
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: نکات برنامه نویسی در دلفی ‏


    لود کردن تصاویر gif در دلفی
    Uses ..., axctrls;

    procedure TForm1.Open1Click(Sender: TObject);
    var
    f : TFileStream;
    graphic : TOleGraphic;
    begin
    if OpenDialog1.Execute then
    begin
    graphic := TOleGraphic.Create;
    f := TFileStream.Create (OpenDialog1.FileName,
    fmOpenRead or fmShareDenyNone);
    try
    graphic.LoadFromStream(f);
    Image1.Picture.Assign(graphic);
    finally
    f.Free
    end
    end
    end;

  7. #199
    کاربرسایت PARS PARS آواتار ها
    تاریخ عضویت
    May 2008
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: نکات برنامه نویسی در دلفی ‏


    گرفتن عکس از اشیاء موجود در فرم
    توضیح با مثال:

    یک استرینق گراید در فرم داریم می خواهیم تصویری از محتویاتش در یک TImage داشته باشیم:

    با فرمان زیر تصویر استرینق گراید را به حافظه کلیپ برد منتقل می کنیم:

    uses clipbrd;

    procedure TForm1.Button1Click(Sender: TObject);
    var
    CopiaGRID : TBitmap;
    begin
    CopiaGRID := TBitmap.Create;
    CopiaGRID.Width := StringGrid1.Width;
    CopiaGRID.Height := StringGrid1.Height ;
    StringGrid1.PaintTo (CopiaGRID.Canvas.Handle, 0, 0);
    clipboard.assign(CopiaGRID);
    CopiaGRID.Destroy;
    end;
    حالا به دستور زیر تصویر را در یک TImage فرا خوانی می کنیم:

    procedure TForm1.Button2Click(Sender: TObject);
    var
    bmp: TBitmap;
    begin
    if Clipboard.HasFormat(CF_PICTURE) then
    begin
    bmp := TBitmap.Create;
    try
    bmp.Assign(Clipboard);
    Image1.Picture.Bitmap.Assign(bmp);
    except
    // Can't convert
    end;
    bmp.Free;
    end else
    begin
    ShowMessage('تصويري در حافظه مو جود نيست');
    end;
    end;

  8. #200
    کاربرسایت PARS PARS آواتار ها
    تاریخ عضویت
    May 2008
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: نکات برنامه نویسی در دلفی ‏


    ساخت يك فرم بيضي شكل
    در رويداد FormCreate ابتدا يك متغير تعريف مي كنيم :
    کد:
    var h: THandle;
    سپس با استفاده از كد زير ابتدا يك بيضي ساخته و سپس فرم را به شكل اين بيضي در مي آوريم:
    کد:
    h := CreateEllipticRgn(40,40,300,200);
    SetWindowRgn(form1.Handle,h,TRUE);

  9. #201
    کاربرسایت PARS PARS آواتار ها
    تاریخ عضویت
    May 2008
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: نکات برنامه نویسی در دلفی ‏


    جلوگيري از نمايش يك فرم
    در دلفي مي توان با استفاده از متد Show يك فرم را نمايش داد.
    در اين قسمت مي خواهيم كه در صورت صحيح بودن يك شرط از نمايش فرم جلوگيري شود.
    براي اين كار، با توجه به اينكه با فراخواني متد Show در فرم اول ، رويداد Onshow از فرم دوم اجرا مي شود. بايد از كد زير در اين رويداد(يعني رويداد onShow فرم دوم) استفاده كنيم :
    کد:
    if Form1.Edit1.Text=IntToStr(1) then
    PostMessage(form2.Handle,WM_CLOSE,0,0);
    دستور PostMessage با پارامتر WM_CLOSE باعث عدم نمايش فرم مي شود. در كد بالا در صورتي كه مقدار Edit1 برابر با 1 شود، Form2 نمايش داده نمي شود.

+ پاسخ به موضوع
صفحه 13 از 13 نخستنخست ... 3 11 12 13

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

     

کاربران خواننده این موضوع : 0

فعالیت :(نمایش - خوانندگان)

There are no names to display.

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید