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

نام تاپیک: تغییر رنگ و فونت در یک edit control

Hybrid View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1
    خوب ، خودتان جواب را دادید .
    در MFC و Win32 باید از طریق همان کدها و پیام هاِ آن ، رنگ ها را تغییر داد ، برای درک درست پیام ها ابتدا باید بر روی پیام های win32 کار کنید تا متوجه شوید که با MFC چگونه عمل کنید ؛ قبلا در این صفحه توضیحات داده شده است:
    https://barnamenevis.org/showthread.php?t=74998

    در MFC نیز به همان شکل در رویداد OnCtlColor و توسط CTLCOLOR_STATIC (برای Static control ها) به همان شکل به جای دستورات فوق انجام می شود که باید ID کنترل مورد نظر را هم مورد تست قرار دهید و فقط برای همان مورد ، یک brush با رنگ دلخواه برگردانید (برای پشت زمینه) و برای بقیه کنترل ها مقدار قبلی را برگردانید.

    برای تغییر رنگ نوشته از طریق SetTextColor با DC مربوط به آن کنترل می توانید رنگ text را تغییر دهید:

    HBRUSH CZilchDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
    {

    HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

    if (pWnd->GetDlgCtrlID() == IDC_MYSTATIC)
    {
    // Set the text color to red
    pDC->SetTextColor(RGB(255, 0, 0));

    pDC->SetBkMode(TRANSPARENT);

    hbr = m_brush;
    }

    return hbr;
    }

  2. #2
    کاربر دائمی آواتار A_Salimi
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    North khorasan-Esfarayen
    پست
    372
    ممنونم
    کد شما به خوبی جواب داد فقط یه سوال در مورد کد تغییر فونتی که گذاشتم دارم
    اون کد رو زمانی که در برنامه قرار دادم فونت کنترل من تغییر کرد در صورتی که در اونجا هیچ کدی خلق (creat) نمیشه آیا مقدار پیش فرضی وجود داره که از اون استفاده میشه ؟

  3. #3
    وقتی شما فونتی در خواست می کنید و آن فونت در سیستم وجود ندارد ، ویندوز به طور اتومات فونتی را که نزدیک ترین خواص را داشته باشد انتخاب می کند ، در اینجا هم چون شما هیچ فونتی را ایجاد نکرده اید خودش با توجه به مقادیری که در سازنده کلاس توسط مایکروسافت تعریف شده ، یک فونت را انتخاب می کند. که الته کار درستی نیست.
    همیشه خودتان یک فونت تعریف و مقدار دهی اولیه کنید تا جواب های عجیب در سایر سیستم ها دریافت نکنید.

تاپیک های مشابه

  1. تغییر زبان control
    نوشته شده توسط خانم گل در بخش C#‎‎
    پاسخ: 1
    آخرین پست: پنج شنبه 06 دی 1386, 02:22 صبح
  2. پاسخ: 2
    آخرین پست: سه شنبه 02 اسفند 1384, 16:52 عصر
  3. پاسخ: 0
    آخرین پست: سه شنبه 02 اسفند 1384, 14:32 عصر

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

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