نمایش نتایج 1 تا 15 از 15

نام تاپیک: مینیمایز غیر عادی

  1. #1

    Arrow مینیمایز غیر عادی

    با سلام
    سوالم اینه که نمیدونم چه قابلیتی از فرمم رو فعال کردم که وقتی کاربر میخواهد برنامه رو مینیمایز کنه و روی دکمه مینیمایز کلیک میکنه ،به جای اینکه برنامه بپره و بره به taskbar میره و رویه سره دکمه استارت میشینه.
    چیکار کنم که مینیمایز فرمم عادی بشه؟
    ممنون.


  2. #2
    کاربر دائمی
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    کاشان
    پست
    809

    نقل قول: مینیمایز غیر عادی

    به احتمال زیاد فرمی که Minimize میشه فرم اصلی نیست و یا شاید مشکل از BorderStyle است. باز این دو را چک کنید

  3. #3

    نقل قول: مینیمایز غیر عادی

    ممنون.
    یعنی کسی واقعا جوابشو نمیدونه؟


  4. #4

    نقل قول: مینیمایز غیر عادی

    نقل قول نوشته شده توسط Delphi-7 مشاهده تاپیک
    با سلام
    سوالم اینه که نمیدونم چه قابلیتی از فرمم رو فعال کردم که وقتی کاربر میخواهد برنامه رو مینیمایز کنه و روی دکمه مینیمایز کلیک میکنه ،به جای اینکه برنامه بپره و بره به taskbar میره و رویه سره دکمه استارت میشینه.
    چیکار کنم که مینیمایز فرمم عادی بشه؟
    ممنون.
    فرمی که این اتفاق براش میافته فرم اصلی برنامتون هستی یا یکی از فرم های جانبی ؟

  5. #5

    نقل قول: مینیمایز غیر عادی

    یکی از فرمهای جانبیه
    فرم شماره 3 هست
    اما به این مربوط نیست.
    چون برا تست یه برنامه دیگه با چنتا فرم ساختم که مینیمایزش عادیه.


  6. #6

    نقل قول: مینیمایز غیر عادی

    نقل قول نوشته شده توسط Delphi-7 مشاهده تاپیک
    یکی از فرمهای جانبیه
    فرم شماره 3 هست
    اما به این مربوط نیست.
    چون برا تست یه برنامه دیگه با چنتا فرم ساختم که مینیمایزش عادیه.
    Minimize ش عادیه یعنی چی ؟!

    موقع اجرای برنامه Application تو Taskbar یک آیکن برای برنامه میسازه که مربوط میشه به Main Form ، یعنی با Minimize کردن فرم اصلی برنامه همه فرم ها Minimize میشن ، ولی وقتی فرم 2 یا n رو Minimize میکنید که تو Taskbar آیکنی نداره توقع دارید چه عملیاتی اجرا بشه که عادی طلقی شه ؟!

  7. #7

    نقل قول: مینیمایز غیر عادی

    حق با شماست.
    حالا چطوری به Application بفهمونیم که اون مینیمایز بشه.؟


  8. #8

    نقل قول: مینیمایز غیر عادی

    حالا چطوری به Application بفهمونیم که اون مینیمایز بشه.؟
    Application.Minimize


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

  9. #9

    نقل قول: مینیمایز غیر عادی

    باید یک Message Handler برای پیغام WM_SysCommand فرم مورد نظر بنویسید و وقتی پیغام SC_Minimize رو دریافت کردید یعنی کاربر بر روی دکمه Minimize فرم کلیک کرده و اون موقع متد Minimize مربوط به Application رو فراخوانی میکنید تا برنامه کلا Minimize بشه ، برای این کار روال MyMinimize رو در قسمت Private کلاس فرم مورد نظر به صورت زیر اعلان کنید :
    procedure MyMinimize (var Msg: TWMSysCommand) ; message WM_SYSCOMMAND;


    و به صورت زیر کدش رو بنویسید :
    procedure TForm2.MyMinimize(var Msg: TWMSysCommand);
    begin
    if MSG.CmdType= SC_MINIMIZE then
    Application.Minimize;
    DefaultHandler(Msg);
    end;

  10. #10

    نقل قول: مینیمایز غیر عادی

    آخرشی به خدا
    اگه بخام برنامم هم مینیمایز بشه هم یه کار دیگه انجام بده در همین روال بنویسمش حله؟


  11. #11

    نقل قول: مینیمایز غیر عادی

    اگه بخام برنامم هم مینیمایز بشه هم یه کار دیگه انجام بده در همین روال بنویسمش حله؟
    بله ، فقط اون DefaultHandler فراموش نشه ، با نوشتن اون DefaultHandler شما به برنامه اعلان میکنید که علاوه بر کد شما کدهای پیش فرض برای این پیغام رو هم اجرا کنه ، اگر اون DefaultHandler رو ننویسید یعنی کنترل همه پیغام های وابسته به WM_SYSCOMMAND رو خودتون تو روال نوشته شده بر عهده گرفتید و اگر کد مناسب برای دکمه های Close یا Minimize یا ... رو ننوشته باشید اون دکمه ها از کار میافتن .

  12. #12
    کاربر دائمی
    تاریخ عضویت
    دی 1387
    محل زندگی
    اهواز
    پست
    924

    نقل قول: مینیمایز غیر عادی

    با سلام خدمت دوستان
    با کد جناب تاجیک فرم فرعی برنامه مینمایز میشه و تا اینجا مشکلی نیست . ولی بعدا فرم را restor میکنیم فرم اصلی برنامه هم restor نمیشود. در حقیقت فقط فرم مورد فرعی نمایش داده میشود. لطفا اساتید راهنمایی بفرمایند. توضیح بیشتر اینکه میخواهم علاوه بر فرم فرعی مورد نظر فرم اصلی برنامه هم همزمان برگشت داده شود. متشکرم.

  13. #13

    نقل قول: مینیمایز غیر عادی

    سلام. دقیقا همون کد رو برای Restore اصلاح کنید.

    procedure TForm1.MyMinimize(var Msg: TWMSysCommand);
    begin
    if MSG.CmdType= SC_MINIMIZE then
    Application.Minimize
    else if MSG.CmdType= SC_RESTORE then
    Application.Restore;


    DefaultHandler(Msg);
    end;


    توابع تبدیل تاریخ با دقت 5000 سال
    پذیرش پروژه، کامپوننت، آموزش برنامه نویسی (دلفی، اس کیو ال، ..) -> 09123780840

    دوستای گلم حمایت کنید : https://cafebazaar.ir/app/com.nikanmehr.marmarxword/


    نرم افزار پخش مویرگی

  14. #14
    کاربر دائمی
    تاریخ عضویت
    دی 1387
    محل زندگی
    اهواز
    پست
    924

    نقل قول: مینیمایز غیر عادی

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

  15. #15
    کاربر دائمی آواتار ariobarzan
    تاریخ عضویت
    تیر 1386
    محل زندگی
    ايران زمين
    پست
    419

    نقل قول: مینیمایز غیر عادی

    چطوری این پروسیجر را صدا بزنیم ؟

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

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

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