صفحه 7 از 11 اولاول ... 56789 ... آخرآخر
نمایش نتایج 241 تا 280 از 435

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

  1. #241
    کاربر دائمی
    تاریخ عضویت
    آذر 1386
    محل زندگی
    زمين خدا
    پست
    116

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

    چرا وقتي ت صفحه اول اين تاپيك رو هر كدوم از لينك ها كليك مي كنم همشون يه صفحه رو باز مي كنن؟

  2. #242

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

    چرا وقتي ت صفحه اول اين تاپيك رو هر كدوم از لينك ها كليك مي كنم همشون يه صفحه رو باز مي كنن؟
    ظاهرا مشکلی در نرم افزار سایت هست. البته مشکل جدیدی نیست، مدتهاست که این مشکل وجود داره.


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  3. #243
    کاربر دائمی آواتار Mah6447
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    گرگان
    پست
    210

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

    نقل قول نوشته شده توسط babak_delphi مشاهده تاپیک
    این کد در حقیقت برای رفتن به تب بعدی روی فرم است.

    procedure Go_Next_Tab(Key : Char);
    begin
    Try
    if (Key = #13) then
    begin
    PostMessage(Screen.ActiveForm.Handle, WM_NEXTDLGCTL, 0, 0);
    Key := #0;
    end;
    Except
    Application.MessageBox(' !!! یک اشکال ناشناخته در روند انجام کار پیش آمده است ','ERROR',MB_OK + MB_ICONERROR);
    end;
    end;
    مي توانيد مثالي بياوريد

  4. #244
    کاربر دائمی آواتار Mah6447
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    گرگان
    پست
    210

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

    نقل قول نوشته شده توسط .::Mehran::. مشاهده تاپیک
    خواندن Version Info یک فایل

    function GetVersion: string;
    var
    VerInfoSize: DWORD;
    VerInfo: Pointer;
    VerValueSize: DWORD;
    VerValue: PVSFixedFileInfo;
    Dummy: DWORD;
    begin
    Result := '';
    VerInfoSize := GetFileVersionInfoSize(PChar(ParamStr(0)), Dummy);
    if VerInfoSize = 0 then Exit;
    GetMem(VerInfo, VerInfoSize);
    GetFileVersionInfo(PChar(ParamStr(0)), 0, VerInfoSize, VerInfo);
    VerQueryValue(VerInfo, '\', Pointer(VerValue), VerValueSize);
    with VerValue^ do
    begin
    Result := IntToStr(dwFileVersionMS shr 16);
    Result := Result + '.' + IntToStr(dwFileVersionMS and $FFFF);
    Result := Result + '.' + IntToStr(dwFileVersionLS shr 16);
    Result := Result + '.' + IntToStr(dwFileVersionLS and $FFFF);
    end;
    FreeMem(VerInfo, VerInfoSize);
    end;


    جناب آقاي مهران مي توان نسخه مكافي نصب شده در سيستم را با اين روش بدست آورد ممنون مي شوم
    اگر ممكن است با مثال بيان نماييد

  5. #245

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

    سلام
    چطور می تونم از مسیر دایرکتوری که هستم یک level بالاتر رو ببینم

  6. #246

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

    تبدیل RGB به CMYK
    اين كه يه مطلب ديگه رو باز مي‌كنه :(

  7. #247

    نقل قول: نکات برنامه نویسی در دلفی - تبديل Hex به RGB و برعكس

    سلام
    حتماً اتفاق افتاده كه موقع طراحي و استفاده از كد رنگها مجبور شدين كد دسيمال رنگهاي RGB رو به هگز يا برعكسش (از هگز به دسيمال) تبديل كنيد.
    اين برنامه اين كار رو براي شما ساده كرده:

    اين هم لينك برنامه: http://www.box.net/shared/8khbb35sht

    اين هم لينك سورسش: http://www.box.net/shared/do719djogl

    .

  8. #248
    کاربر دائمی آواتار babak_delphi
    تاریخ عضویت
    اردیبهشت 1384
    محل زندگی
    آستارا
    پست
    634

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

    نقل قول نوشته شده توسط Mah6447 مشاهده تاپیک
    مي توانيد مثالي بياوريد
    3 تا edit بذارید روی فرم و TabOrder اونها رو تنظیم کنید
    بعد این تابع رو همانطور که در همین بخش توضیح دادم بنویسید و استفاده کنید
    این کد رو باید در Onkeypress بنویسید

  9. #249

    Lightbulb نرخ

    سلام دوستان
    من فرمول محاسبه ی نرخ یک برنامه رو در سایت دیدم و برای کاربرد راحتتر برای خودم برنامهی محایبه کننده ی اون را ساختم حالا اگه کسی نیاز داره این کارشو راحت می کنه.
    فایل های ضمیمه فایل های ضمیمه

  10. #250
    کاربر دائمی آواتار NIUSHA_KH
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    London
    پست
    118

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

    با تشکر فراوان
    لینکهای آخر فهرست ، اشتباها همه به تغییر ولیوم اشاره میکند

  11. #251

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

    لینکهای آخر فهرست ، اشتباها همه به تغییر ولیوم اشاره میکند
    مشکل از نرم افزار سایت هست.


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  12. #252

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

    کد بستن Alt + F4 :


    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;

  13. #253
    کاربر دائمی آواتار Mah6447
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    گرگان
    پست
    210

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

    جناب آقای babak_delphi دست شما درد نکند تست زدم درست کار می کند
    حال آیا می توان با استفاده از کلیک های Up , Down و با توجه به Taborder های تعریف شده
    حرکت کرد (راهی شبیه به راه عنوان شده)
    با تشکر
    آخرین ویرایش به وسیله Mah6447 : چهارشنبه 01 آبان 1387 در 20:03 عصر

  14. #254

    لود کردن تصاویر 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;

  15. #255

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

    تبدیل اشیاء موجود در فرم به تصویر

    توضیح با یک مثال:

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

    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;

    حالا تصویر استرینق گراید ما در کلیپ برد موجود است و با دستور زیر در یک Timag لود می کنیم:

    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;

  16. #256

    گرفتن عکس از اشیاء موجود در فرم

    توضیح با مثال:

    یک استرینق گراید در فرم داریم می خواهیم تصویری از محتویاتش در یک 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;

  17. #257
    کاربر دائمی آواتار مائده 100
    تاریخ عضویت
    آبان 1387
    محل زندگی
    یک جای با صفا
    پست
    114

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

    نقل قول نوشته شده توسط Wish Master مشاهده تاپیک
    با سلام و عرض خیر مقدم خدمت برنامه نویسان و برنامه نویسان بعد از این :wink: ...
    در این بخش میخوایم در مورد مسائل و نکاتی از برنامه نویسی کاربردی بحث کنیم، مواردی که بعد از رسم تمامی دیاگرام ها و فلوچارتهای برنامه به آنها میرسیم و مثل ... میمونیم تو گل
    امیدوارم دوستان دیگر هم اگه نکاتی دارن که به درد بقیه هم میخوره حتماً در اینجا مطرح کنن ... .


    -- با اجازه آقا محمد --
    hr110 : آدرس نکات برنامه نویسی درون این پست به این شرح می‌باشند:

    باز و بسته کردن سیدی درایو
    تغییر Volume ویندوز
    چگونه لیست سیدی درایوهای کامپیوتر را بدست آوریم
    تغییر Resolution مونیتور
    قرار دادن یک Bitmap در یک متافایل
    بدست آوردن Serial Number درایو
    از بین بردن یک Task در ویندوز
    شناسایی یک فایل
    کلیه اعمال قابل انجام روی فلاپی دیسک
    دیالوگ برای Select Directory
    روش چرخاندن یک نقطه در فضای دو بعدی حول یک نقطه دوبعدی دیگر:
    Screen Shots
    محاسبه سن یک فرد
    محاسبه لگاریتم با پایه متغیر
    ضرب اعداد صحیح بزرگ
    استفاده از الگوریتم Base64 جهت Encoding و Decoding
    محاسبه فاکتوریل یک عدد
    محاسبه معکوس یک ماتریس
    تعیین اول بودن یک عدد
    تغییر مبنای یک عدد از مبنای هشت به Integer
    تغییر مبنای یک عدد Integer به مبنای هشت
    تعیین شماره روز در سال
    تبدیل یک عدد هگزادسیمال به باینری
    تغییر مقیاس یک تصویر
    رندر متن یک TrichEdit در یک Canvas
    تغییر وضوح یک Jpg
    اعمال فیلتر Emboss روی یک تصویر
    highlight کردن متن درون Twebbrowser
    بدست آوردن پروسسهای فعال شبکه
    ایجاد یک TWebBrowser در RunTime
    استفاده از ClientSocket و ServerSocket
    بدست آوردن لیست کاربران موجود در شبکه Remote
    چاپ یک صفحه در TwebBrowser
    انتخاب یک کامپیوتر در شبکه
    لود کردن یک کد html بصورت مستقیم در TWebBrowser
    ارسال پیام در ICQ
    تبدیل یک فایل CSV به XML
    لیست تمام فایلهای موجود در یک دایرکتوری
    نصب یک فایل INF در دلفی
    دسترسی به ListBox از طریق API
    لیست تمام زیرپوشه های یک پوشه اصلی
    جایگزینی یک متن درون TextFile
    تغییر نام یک دایرکتوری
    خواندن یک فایل table-textfile درون یک StringGrid
    استفاده از توابع shell برای copy/move یک فایل
    اضافه کردن اطلاعات به یک فایل EXE
    پاک کردن یک فایل درون پوشه Document
    توابع مفید جهت کار با Stream
    تبدیل OEM به ANSI
    ثبت خروجی یک برنامه DOS
    قرار دادن یک فایل Exe درون برنامه و اجرای آن
    پاک کردن برنامه توسط خودش بعد از اجرای آن
    غیر فعال کردن دکمه Close در فرم
    روش استفاده از TFileStream
    جایگزینی یک Dll در حال استفاده از آن
    تغییر صفات یک فایل
    خواندن یک فایل متنی بصورت خط به خط و تغییر آن
    تعیین فضای آزاد دیسک
    استفاده از فایلهای INI
    سایز یک دایرکتوری
    کپی کردن یک فایل
    روش بدست آوردن اطلاعات CPU
    مشخص کردن وجود Terminal Service ها
    کپی فایلهای دایرکتوری
    تعیین نسخه MS Word نصب شده روی کامپیوتر
    وارد کردن یک متن RTF در Word
    فشرده سازی و ترمیم یک بانک اطلاعاتی Access
    ایجاد Database در یک بانک اطلاعاتی sql sever 2000 در حالت local
    پیدا کردن یک مقدار در فیلد ایندکس نشده به کمک TTable
    تهیه خروجی از جداول ADO به فرمتهای مختلف
    ایجاد خروجی از TDBGrid به قالب Excel
    دسترسی به جداول paradox روی cdrom یا درایوهای Read Only
    ایجاد یک جدول مجازی
    ایجاد سریع یک جدول پارادوکس به کمک کد
    ایجاد یک اتصال DBExpress در زمان اجرا
    رنگ آمیزی یک TDBGrid
    خواندن تمام رکوردهای یک جدول در TstringGrid
    جلوگیری از لیست توماری شدن منو
    به چرخش در آوردن متن
    یافتن فایل در تمام شاخه و زیر شاخه هایش
    بدست آوردن Handle یک پروسه با نام فایلش
    فرم شفاف شده و فقط کنترل ها نشان داده شود
    مخفی و ظاهر ساختن عنوان فرم
    خذف یا انتقال فایل در حال اجرا توسط برنامه دیگر ( فقط در ویندوز نوع NT)
    تعیین وضعیت مانیتور
    طریقه بوت کردن ویندوز 2000 و XP
    چگونه میتوان پنجره اضافه کردن چاپگر را نمایش داد
    چگونه میتوان کنترل صفحه کلید را در تمامی ویندوزها بدست گرفت
    کد خطا های زمان اجرای دلفی
    نشان دادن تمام گزینه های منو در روی دکمه برنامه در Taskbar
    زمان آخرین دسترسی به یک فایل
    فهمیدن اینکه آیا یک ایمیل از نظر املایی درست است یا نه
    حذف داده های تکراری از لیست
    ساده ترین راه برای باز کردن یک فایل توسط برنامه مرتبط با آن
    ایجاد سایه در زیر فرم ها
    پیدا کردن یک پروسه در پروسه های دیگر با نام فایلش
    تقریبا کلیه فانکشن هایی که برای کار با فلاپی نیاز میشه ...
    بدست آوردن پسورد فایلهای اکسس 97
    تشخیص نصب بودن یا نبودن کارت صدا ...
    بدست آوردن و تنظیم کردن صدا در سیستم
    چگونه دکمه Caps Lock را روشن و خاموش کنیم
    چگونه می توان از جابجایی فرم جلوگیری کرد
    چگونه می توان RecycleBin را خالی کرد
    فرمت کردن یک دریاو در win32
    عوض کردن wallpaper
    این یه کد برای نوشتن یک عدد به حروف
    ذخیره کردن یک فرم به عنوان یک عکس
    Drop Dawn کردن آیتم های لیست باکس
    گذاشتن هرگونه عکس بر روی BitBtn ...
    نمایش صفحه مشخصات یک فایل ( Properties ) ...
    مشخص نمودن وضعیت اتصال به اینترنت
    بدت آوردن نام کاربر
    Extract an Icon from EXE or DLL file
    این تابع برنامه مورد نظر را اجر میکند و تا زمان خاتمه آن منتظر میماند.
    روشن و خاموش کردن Numlock
    نمایش سطرهای یک Grid به صورت یکی در میان
    چگونه سایز Col را در یک DBGrid به صورت اتوماتیک قرار دهیم
    اضافه نمودن یک کاربر جدید داخل یک دیتابیس در SQLServer 2000
    کنترل ولوم صدا با استفاده از کد نویسی
    نحوه استفاده بررسی خالی بودن کنترل TImage
    رنگ آمیزی کنترلهای تمکرز یافته(Focused Control)
    CheckBox در DBGrid
    تبدیل عدد به حرف
    نشان دادن فرم بدون دکمه ای در تسکبار
    تشخیص اتصال به شبکه
    چه مدت است که ویندوز شما در حال اجراست
    ایجاد میانبر از یک فایل در ویندوز
    minimize کردن کلیه پنجره ها
    تغییر تاریخ سیستم
    نمایش مجموع مقادیر در DbGrid
    تغییر Resolution مونیتور
    shutdown and restart and logof windows
    تصویر توسعه‌دهندگان دلفی 7
    تعریف آرایه های ثابت (Constant) در Delphi
    دو کد نمونه برای کار با آرایه هایی از کامپوننتها
    بر زدن (Shuffle) آرایه
    تشخیص اتصال (connection) به اینترنت (internet)
    دانلود (download) فایل از اینترنت با نمایش درصد پیشرفت (progress indicator)
    خواندن (Get) لیست favorites از IE
    تغییر صفحه Home Page در IE
    بدست آوردن لیست NetWork Drive ها
    تعیین screen saver
    تعیین زمان در حال اجرا بودن windows
    تشخیص Administrator بودن کاربر (user)
    تبدیل RGB به CMYK
    یافتن MyDouments برای کاربر جاری
    Cool how Can I Read a unicode text file in Delphi
    تغییر اندازه کلید Start
    چک کردن اینکه آیا فایل در Local Drive می باشد.
    چک کردن اینکه پارتیشن Fat میباشد یا NTFS
    چک کردن اینکه آیا سرویسی مورد نظر start می باشد
    چک کردن اینکه آیا Sound card نصب شده است
    چک کردن اینکه آیا دلفی در حال اجراست
    پیدا کردن و بارگذاری Icon داخل فایل
    با این تابع می توانید ولوم سریالِ دیسک را بدست آوردید
    چگونه Edit فقط عدد بگیرد
    چگونه برنامه مان فقط یک نسخه اجرا شود
    تغییر رزولوشن مانیتور
    خالی کردن Editهای یک فرم
    چک کردن خالی بودن یک مسیر
    آیا فایل مورد نظر باینری است یا نوشتاری است
    چگونه فایلهای INI را نصب کنی
    چگونه تعداد ایتمها ی ListBox را با API بدست اوریم
    چگونه یک ایتم ListBox را با API حذف کنی
    چگونه ایتم انتخاب شده ی ListBox را توسط API بدست اوریم
    گرفتن ایتم یک ایتم ListBox توسط API
    بدست اوردن تمامی ایتم های یک ListBox توسط API
    تغییر نام یک پوشه
    باز کردن یک پوشه توسط Windows Explorer
    بدست اوردن مالک ( Owner ) یک فای
    مقایسه ی اندازه ی دو فایل
    بدست اوردن تاریخ یک فایل
    ایا فایل ما ASCII است
    بدست اوردن حجم یک فایل
    کپی کردن یک پوشه
    جا به جا کردن یک پوشه
    حذف یک پوشه
    گرفتن مسیر جاری و تغییر مسیر جاری
    کپی کردن فایل
    خواندن Version Info یک فایل
    ریختن یک فایل در سطل زباله ویندوز ...
    ما هر قسمتی را روش کلیک می کنیم فقط بخش تغییر vllow سیستم را می آره

  18. #258

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

    ما هر قسمتی را روش کلیک می کنیم فقط بخش تغییر vllow سیستم را می آره
    در پست شماره 252 یک بار توضیح دادم.


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  19. #259

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

    کسانی که از بانک اطلاعاطی پارادوکس استفاده ميکنن برای جلوگيری از تخريب فايل و حذف فيزيکی رکوردها از جداول اطلاعاتی هرچند وقت يکبار اقدامبه فشرده کردن جدول کنند تابع زير که به paradoxpack موسوم است جهت فشرده كردن جداول پارادوكس ارائه ميشود
    يونيتDBIPROCS را به قسمت uses اضافه کنید


    procedure TForm1.ParadoxPack(Tabela: TTable);

    var TBDesc: CRTblDesc;

    hDb: hDbiDb;

    CaminhoTabela: array[0..dbiMaxPathLen] of char;

    begin

    If not Tabela.Active then

    Tabela.Open;

    FillChar(TBDesc,Sizeof(TBDesc),0);

    With TBDesc do begin

    StrPCopy(szTblName,Tabela.TableName);

    StrPCopy(szTblType,szParadox);

    bPack:=True;

    end;

    hDb:=nil;

    Check(DbiGetDirectory(Tabela.DBHandle,True,Caminho Tabela));

    Tabela.Close;

    Check(DbiOpenDatabase(nil,'STANDARD',dbiReadWrite, dbiOpenExcl,nil,0,nil,nil,hDb) );

    Check(DbiSetDirectory(hDb,CaminhoTabela));

    Check(DBIDoRestructure(hDb,1,@TBDesc,nil,nil,nil,F alse));

    Tabela.Open;

    end;


    procedure TForm1.Button1Click(Sender: TObject);

    begin

    ParadoxPack(Table1);

    end;

  20. #260

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

    خیلی ها از بانک اطلاعاتی اکسس تو برنامه هاشون استفاده میکنن
    این کد برای فشرده سازی و تعمیر بانک های اکسس

    uses
    ComObj;

    function CompactAndRepair(DB: string): Boolean; {DB = Path to Access Database}
    var
    v: OLEvariant;
    begin
    Result := True;
    try
    v := CreateOLEObject('JRO.JetEngine');
    try
    V.CompactDatabase('Provider=Microsoft.Jet.OLEDB.4. 0;Data Source='+DB,
    'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+DB+'x;Jet OLEDB:Engine Type=5');
    DeleteFile(DB);
    RenameFile(DB+'x',DB);
    finally
    V := Unassigned;
    end;
    except
    Result := False;
    end;
    end;

  21. #261
    کاربر تازه وارد آواتار دکمه64
    تاریخ عضویت
    آبان 1387
    محل زندگی
    شیراز
    سن
    39
    پست
    39

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

    کدی برای تست روشن بودن چراغ های سه گانه

    public
    procedure CheckCapslock;
    procedure CheckNumlock;
    procedure CheckInslock;
    procedure CheckScrlock;
    { public declarations }
    end;
    procedure TForm1.CheckCapslock;
    begin
    if Odd (GetKeyState (VK_CAPITAL)) then
    StatusBar1.Panels[1].Text := 'Caps'
    else
    StatusBar1.Panels[1].Text := '';
    end;
    procedure TForm1.CheckNumlock;
    begin
    if Odd (GetKeyState (VK_NUMLOCK)) then
    StatusBar1.Panels[2].Text := 'Num'
    else
    StatusBar1.Panels[2].Text := '';
    end;
    procedure TForm1.CheckInslock;
    begin
    if Odd (GetKeyState (VK_INSERT)) then
    StatusBar1.Panels[3].Text := 'Ins'
    else
    StatusBar1.Panels[3].Text := '';
    end;
    procedure TForm1.CheckScrlock;
    begin
    if Odd (GetKeyState (VK_SCROLL)) then
    StatusBar1.Panels[4].Text := 'Scr'
    else
    StatusBar1.Panels[4].Text := '';
    end;
    procedure TForm1. Timer1Timer(Sender: TObject);
    begin
    CheckCapslock;
    end;
    procedure TForm1. Timer2Timer(Sender: TObject);
    begin
    CheckNumlock;
    end;
    procedure TForm1. Timer3Timer(Sender: TObject);
    begin
    CheckInslock;
    end;
    procedure TForm1. Timer4Timer(Sender: TObject);
    begin
    CheckScrlock;
    end;

  22. #262
    کاربر تازه وارد آواتار دکمه64
    تاریخ عضویت
    آبان 1387
    محل زندگی
    شیراز
    سن
    39
    پست
    39

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

    کدی برای بزرگ کردن حرف اول در ادیت باکس ها
    [
    CODE]
    procedure TForm1.DBEdit1Change(Sender: TObject);
    var

    Cursor : Integer;
    begin
    if DBEdit1.Text <> '' then
    begin
    Cursor:=DBEdit1.SelStart;
    DBEdit1.Text := UpperCase(Copy(DBEdit1.Text,1,1)) +
    LowerCase(Copy(DBEdit1.Text,2,Length(DBEdit1.Text) ));
    DBEdit1.SelStart := Cursor;
    end;
    end;



    [/
    CODE]

  23. #263

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

    سلام
    ببخشيد ميخواستم بدونم چه طوري ميشه فونت را به فايل اجرايي(exe) در دلفي اضافه كنيم.
    email:alireza2756@gmail.com

  24. #264
    کاربر جدید
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    iran / bushehr
    پست
    29

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

    سلام
    من یه مشکل بزرگ دارم اگه بهم کمک کنید ممنون میشم مشکل من اینه که :
    بعد از این که اطلاعاتم رو ذخیره می کنم با بستن برنامه و ویا خاموش کردن کامپیوتر اطلاعات ذخیره شده حذف می شود تو رو خدا کمکم کنید . راه حل رو بهم بگید

  25. #265
    کاربر تازه وارد آواتار دکمه64
    تاریخ عضویت
    آبان 1387
    محل زندگی
    شیراز
    سن
    39
    پست
    39

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

    نقل قول نوشته شده توسط negarin5340 مشاهده تاپیک
    سلام
    من یه مشکل بزرگ دارم اگه بهم کمک کنید ممنون میشم مشکل من اینه که :
    بعد از این که اطلاعاتم رو ذخیره می کنم با بستن برنامه و ویا خاموش کردن کامپیوتر اطلاعات ذخیره شده حذف می شود تو رو خدا کمکم کنید . راه حل رو بهم بگید
    لطفا کمی کاملتر توضیح بدین،چه اطلاعاتی،اصلا برنامتون چیه و چی کار می کنه؟

  26. #266
    کاربر جدید
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    iran / bushehr
    پست
    29

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

    سلام مجدد
    برنامه من برای یه شرکته که تمام حساب های دفتری اونها رو می خوام به برنامه تبدیل کنم این برنامه کارهای زیر رو اجام میده :
    1- ثبت کردن اطلاعات
    2 - ویرایش اطلاعات
    3- حذف اطلاعات
    و جستجو که این برنامه چون برای یه مرکز ISP است بطور مثال با وارد کردن شماره تلفن اطلاعات خواسته شده رو نمایش دهد
    مشکل من حالا اینه اون اطلاعات مربوط به یک نفر رو که ذخیره می کنم باید باشه که بتونم کارهای دیگگگه رو انجام بدم نه اینکه هر روز صبح کاربر اطلاعات رو دوباره ذخیره کنه چون می خواهیم با این برنامه حساب های دفتری رو ببندیم تو رو خدا کمکم کنید

  27. #267
    کاربر تازه وارد آواتار دکمه64
    تاریخ عضویت
    آبان 1387
    محل زندگی
    شیراز
    سن
    39
    پست
    39

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

    مشکل شما اون پایگاه داده ای هست که استفاده می کنید.
    من معمولا از اکسس استفاده می کنم و با دستور post که بعد از هر بار وارد کردن اطلاعاتم انجام میشه ، اطلاعاتم از بین نمی ره ، حتی اگه وسط کار برق قطع بشه.

  28. #268
    کاربر جدید
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    iran / bushehr
    پست
    29

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

    سلام
    من با access کار کردم ولی نمی دونم چه طوری اونو با دلفی ارتباط بدم اگه میشه منو راهنمایی کنید کتاب هم خوندم ولی چیزی داخلش نبوده
    یه سوالبطور مثال در پارادوکس نام فیلدها رو می نویسیم
    در accessهم بهمون طریقی که جدولها رو ایجاد می کردیم ابتدا database بعد ساختن جدول و در کل ذخیره کردن اون بعد که اونو ذخیره کردم چه طوری به دلفی معرفی کنم که دلفی بتونه اونو بشناسه تو رو خدا کمکم کنید

  29. #269
    کاربر تازه وارد آواتار دکمه64
    تاریخ عضویت
    آبان 1387
    محل زندگی
    شیراز
    سن
    39
    پست
    39

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

    نقل قول نوشته شده توسط negarin5340 مشاهده تاپیک
    سلام
    من با access کار کردم ولی نمی دونم چه طوری اونو با دلفی ارتباط بدم اگه میشه منو راهنمایی کنید کتاب هم خوندم ولی چیزی داخلش نبوده
    یه سوالبطور مثال در پارادوکس نام فیلدها رو می نویسیم
    در accessهم بهمون طریقی که جدولها رو ایجاد می کردیم ابتدا database بعد ساختن جدول و در کل ذخیره کردن اون بعد که اونو ذخیره کردم چه طوری به دلفی معرفی کنم که دلفی بتونه اونو بشناسه تو رو خدا کمکم کنید
    عناصر:
    1) ADOTable1 از صفحه ADO
    2)DBGrid1
    3) DataSource1

    خاصیت dataset عنصر DataSource1 را ADOTable1 انتخاب کنید
    خاصیت DataSource عنصر DBGrid1 را DataSource1 انتخاب کنید
    خاصیت ConnectionString عنصر ADOTable1 را کلیک کرده گزینه Use ConnectionString را انتخاب و دکمه build را کلیک کنید در صفحه بعد گزینه Microsoft.Jet.OLEDB.4.0 را انتخاب و دکمه next را کلیک کنید در صفحه Connection مسیر فایل اکسس ذخیره شده را انتخاب و دکمه ok را کلیک کنید.
    حال خاصیت Tablename عنصر ADOTable1 را جدول مورد نظر ساخته شده در فایل اکسس انتخاب کنید و در آخر خاصیت active عنصر ADOTable1 را true کنید
    بیشتر دستوراتی که باید با عنصر ADOTable استفاده کنید همانند عنصر Table هست.
    موفق باشید.

  30. #270
    کاربر تازه وارد آواتار دکمه64
    تاریخ عضویت
    آبان 1387
    محل زندگی
    شیراز
    سن
    39
    پست
    39

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

    نقل قول نوشته شده توسط negarin5340 مشاهده تاپیک
    سلام
    من با access کار کردم ولی نمی دونم چه طوری اونو با دلفی ارتباط بدم اگه میشه منو راهنمایی کنید کتاب هم خوندم ولی چیزی داخلش نبوده
    یه سوالبطور مثال در پارادوکس نام فیلدها رو می نویسیم
    در accessهم بهمون طریقی که جدولها رو ایجاد می کردیم ابتدا database بعد ساختن جدول و در کل ذخیره کردن اون بعد که اونو ذخیره کردم چه طوری به دلفی معرفی کنم که دلفی بتونه اونو بشناسه تو رو خدا کمکم کنید
    عناصر:
    1) ADOTable1 از صفحه ADO
    2)DBGrid1
    3) DataSource1

    خاصیت dataset عنصر DataSource1 را ADOTable1 انتخاب کنید
    خاصیت DataSource عنصر DBGrid1 را DataSource1 انتخاب کنید
    خاصیت ConnectionString عنصر ADOTable1 را کلیک کرده گزینه Use ConnectionString را انتخاب و دکمه build را کلیک کنید در صفحه بعد گزینه Microsoft.Jet.OLEDB.4.0 را انتخاب و دکمه next را کلیک کنید در صفحه Connection مسیر فایل اکسس ذخیره شده را انتخاب و دکمه ok را کلیک کنید.
    حال خاصیت Tablename عنصر ADOTable1 را جدول مورد نظر ساخته شده در فایل اکسس انتخاب کنید و در آخر خاصیت active عنصر ADOTable1 را true کنید
    بیشتر دستوراتی که باید با عنصرADOTable استفاده کنید همانند عنصرTable هست.
    موفق باشید.

  31. #271

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

    یه برنامه شبیه Magnifier ویندوز
    فایل های ضمیمه فایل های ضمیمه

  32. #272
    کاربر جدید
    تاریخ عضویت
    آذر 1387
    محل زندگی
    هر جا که دلم آنجا باشد
    پست
    8

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

    باسلام وتشکّر:
    من روی هر لینکی که کلیک می کنم اون لینک باز نمی شه؟

  33. #273
    کاربر جدید
    تاریخ عضویت
    مهر 1385
    محل زندگی
    اصفهان
    پست
    9

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

    با سلام
    اكثر لينكهاي فوق اشتباها به "تغییر Volume ویندوز" منتهي ميشوند
    من با لينك "غير فعال كردن دگمه Close در فرم" كار داشتم ولي كليك روي آن صفحه "تغییر Volume ویندوز" را باز ميكند

    در صورت امكان اصلاح نماييد
    با تشكر
    هاشمي
    hashemi-te@esfahansteel.com

  34. #274
    کاربر تازه وارد آواتار دکمه64
    تاریخ عضویت
    آبان 1387
    محل زندگی
    شیراز
    سن
    39
    پست
    39

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

    StatusBarروی ProgressBar نصب
    StatusBar می باشد. انجام این کار بسیار ساده است. برای این کار کافی است بر روی فرم خود یک StatusBar اضافه نمایید حالا در قسمت تعاریف متغیر های عمومی کد زیر را بنویسید:
    ProgressBar1: TprogressBar;


    در ادامه دستورات زیر را در خاصیت
    OnCreate فرم خود بنویسید:
    var
    ProgressBarStyle: LongInt;
    begin
    {create a run progress bar in the status bar}
    ProgressBar1 := TProgressBar.Create(StatusBar1);
    ProgressBar1.Parent := StatusBar1;
    {remove progress bar border}
    ProgressBarStyle := GetWindowLong(ProgressBar1.Handle, GWL_EXSTYLE);
    ProgressBarStyle := ProgressBarStyle - WS_EX_STATICEDGE;
    SetWindowLong(ProgressBar1.Handle, GWL_EXSTYLE, ProgressBarStyle);
    {set progress bar position and size - put in Panel[2]}
    ProgressBar1.Left := StatusBar1.Panels.Items[0].Width +
    StatusBar1.Panels.Items[1].Width + 4;
    ProgressBar1.Top := 4;
    ProgressBar1.Height := StatusBar1.Height - 6;
    ProgressBar1.Width := StatusBar1.Panels.Items[2].Width - 6;
    {set range and initial state}
    ProgressBar1.Min := 0;
    ProgressBar1.Max := 100;
    ProgressBar1.Step := 1;
    ProgressBar1.Position := 0;
    end;

    حالا برای آنکه پس از خارج شدن از فرم حافظه اشغال شده آزاد گردد، در قسمت
    OnDestroy در Event فرمتان دستور زیر را اضافه نمایید:

    ProgressBar1.free;

  35. #275
    کاربر تازه وارد آواتار دکمه64
    تاریخ عضویت
    آبان 1387
    محل زندگی
    شیراز
    سن
    39
    پست
    39

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

    تغییر Hint برای هر ستون از DBGrid در دلفی
    ابتدا باید یک عنصر جدید مبتنی بر TDBGrid ایجاد کنید و رویداد OnMouseMove را فراخوانی کنید:
    type
    TMyDBGrid = class(TDBGrid)
    published
    property OnMouseMove;
    end;

    اگرچه شما در رویداد
    OnMouseMove مختصات X و Y را بدست خواهید آورد، اما شما باید ستون مورد نظر را پیدا کنید. برای ادامه کار لازم است که سطر زیر را در قسمت protected قرار دهید:
    procedure WMMouseMove(var Message : TWMMouse); message WM_MOUSEMOVE;

    همچنین متغیر های زیر را در قسمت
    public اضافه نمایید:
    MouseRow : integer;
    MouseCol : integer;

    بنابراین متد
    WMMouseMove بصورت ریر خواهد بود:
    procedure TMyDBGrid.WMMouseMove(var Message : TWMMouse);
    var
    t : TGridCoord;
    begin
    t := MouseCoord(Message.XPos, Message.YPos);
    MouseCol := t.x;
    MouseRow := t.y;
    inherited;
    end;

    ما ابتدا فیلدهای
    XPost و YPos را از ساختار WMMouseMove تنظیم میکنیم:
    procedure TForm2.MyDBGrid1MouseMove(Sender: TObject; Shift: TShiftState; X, Y:
    Integer);
    begin
    if (((dgIndicator in MyDBGrid1.Options) and (MyDBGrid1.MouseCol > 0)) or
    ((not (dgIndicator in MyDBGrid1.Options)) and (MyDBGrid1.MouseCol <> -1)))
    and (MyDBGrid1.MouseCol <> OldMouseCol) then begin
    OldMouseCol := MyDBGrid1.MouseCol;
    if dgIndicator in MyDBGrid1.Options then
    MYDBGrid1.Hint := MyDBGrid1.Columns[MyDBGrid1.MouseCol - 1].FieldName
    else
    MYDBGrid1.Hint := MyDBGrid1.Columns[MyDBGrid1.MouseCol].FieldName;
    end;
    end;

    حالا مجددا" تعریف زیر را در قسمت
    public قرار دهید:

    HintMouseMessage(Control : TControl; var Message : TMessage)


    در قسمت
    OnMouseMove از TDBGrid نیز فرامین زیر را اضافه نمایید:
    var
    r : TMessage;
    begin

    Application.HintMouseMessage(self, r);
    TWMMouse(r).XPos := X;
    TWMMouse(r).YPos := Y;
    Application.HintMouseMessage(MyDBGrid1, r);
    end;

  36. #276
    کاربر تازه وارد آواتار دکمه64
    تاریخ عضویت
    آبان 1387
    محل زندگی
    شیراز
    سن
    39
    پست
    39

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

    نمایش میزان كپی شدن فایل با ProgressBar در دلفی
    چطور میتوان زمان کپی شدن فایل را با استفاده از 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');
    end;


    چطور می توان زمان کپی شدن فایل را محاسبه و نمایش داد؟
    برای این کار نیز میتوانید از تابع زیر استفاده کنید:
    procedure TForm1.CopyFileWithProgressBar1(Source, Destination: string);
    var
    FromF, ToF: file of byte;
    Buffer: array[0..4096] of char;
    NumRead: integer;
    FileLength: longint;
    t1, t2: DWORD;
    maxi: integer;
    begin
    AssignFile(FromF, Source);
    reset(FromF);
    AssignFile(ToF, Destination);
    rewrite(ToF);
    FileLength := FileSize(FromF);
    with Progressbar1 do
    begin
    Min := 0;
    Max := FileLength;
    t1 := TimeGetTime;
    maxi := Max div 4096;
    while FileLength > 0 do
    begin
    BlockRead(FromF, Buffer[0], SizeOf(Buffer), NumRead);
    FileLength := FileLength - NumRead;
    BlockWrite(ToF, Buffer[0], NumRead);
    t2 := TimeGetTime;
    Min := Min + 1;
    // Show the time in Label1
    label1.Caption := FormatFloat('0.00', ((t2 - t1) / min * maxi - t2 + t1) / 100);
    Application.ProcessMessages;
    Position := Position + NumRead;
    end;
    CloseFile(FromF);
    CloseFile(ToF);
    end;
    end;

    در این تابغ ابتدا زمان اولیه در متغیر
    t1 ذخیره شده و سپس پس از کپی شدن هر قسمت از فایل، زمان در متغیر t2 ذخیره میشود و توسط فرمول زیر مقدار زمان باقی مانده تا کپی کامل فایل بدست می آید.
    ((t2 - t1) / min * maxi - t2 + t1) / 100


  37. #277

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

    بازی حدس زدن عدد.مثبت یعنی عدد و مکانش درسته،منفی یعنی فقط عدد درسته و جاش غلطه!
    فایل های ضمیمه فایل های ضمیمه

  38. #278
    کاربر تازه وارد آواتار Naruto
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    تهران
    پست
    79

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

    من با لينك "غير فعال كردن دگمه Close در فرم" كار داشتم ولي كليك روي آن صفحه "تغییر Volume ویندوز" را باز ميكند
    سلام.
    غیرفعال کردن دکمه Close در SystemMenu :


    Var
    hMenuHandle: Integer;
    Begin
    hMenuHandle := GetSystemMenu(Handle, False);
    if (hMenuHandle <> 0) then
    DeleteMenu(hMenuHandle, SC_CLOSE, MF_BYCOMMAND);
    End;


    فعال کردن دکمه Close در SystemMenu :


    Var
    hMenuHandle:Integer;
    Begin
    hMenuHandle := GetSystemMenu(Handle, True);
    if (hMenuHandle <> 0) then
    EnableMenuItem(hMenuHandle,SC_CLOSE,MF_BYCOMMAND OR MF_ENABLED);
    End;


  39. #279

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

    یه برنامه برای محاسبه هزینه تلفن و اینترنت یه چیزی شبیه DialSpy البته در اندازه های کوچیکتر
    ممنون میشم اگه نظر بدین واشکالاتم رو بگید.
    البته بیشترش حاصل کد ها و راه نمایی های خودتونه!
    یک قسمت دیگه به برنا مه اضافه کردم که به صورت خودکار پروسه های مورد نظر رو اجرا یا متوقف کنه.
    من خودم عادت دارم وقتی به اینترنت وصل میشم آنتی ویروس رو راه اندازی میکنم و پس از قطع ارتباط میبندمش قسمت اظافه شده این کار رو انجام میده.(آخر تن پروری!)
    و برخی برنامه ها هم در هنگام اتصال باید بسته باشن تا تقلبی بودن شون توسط سرور معلوم نشه و از کار نیفتن مثل مجموعه CS4.
    (سه فایل زیپ 1و2و3 را داخل یک پوشه خالی کنید)
    فایل های ضمیمه فایل های ضمیمه
    • نوع فایل: zip Decode.zip‏ (9.3 کیلوبایت, 61 دیدار)
    • نوع فایل: zip 1.zip‏ (237.8 کیلوبایت, 162 دیدار)
    • نوع فایل: zip 2.zip‏ (355.1 کیلوبایت, 166 دیدار)
    • نوع فایل: zip 3.zip‏ (217.1 کیلوبایت, 96 دیدار)
    آخرین ویرایش به وسیله hadiaj168 : دوشنبه 14 اردیبهشت 1388 در 23:05 عصر

  40. #280
    کاربر دائمی آواتار Yasersadegh
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    اروميه
    پست
    393

    ساخت يك فرم بيضي شكل

    در رويداد FormCreate ابتدا يك متغير تعريف مي كنيم :

    var h: THandle;
    سپس با استفاده از كد زير ابتدا يك بيضي ساخته و سپس فرم را به شكل اين بيضي در مي آوريم:


    h := CreateEllipticRgn(40,40,300,200);
    SetWindowRgn(form1.Handle,h,TRUE);


صفحه 7 از 11 اولاول ... 56789 ... آخرآخر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

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