Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд if (IsIconic()) IsIconic даёт true, если окно минимизировано. Т.е. у тебя этот код отрабатывает, когда окно свёрнуто в таскбар. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2016, 08:39 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbЛизоблюд if (IsIconic()) IsIconic даёт true, если окно минимизировано. Т.е. у тебя этот код отрабатывает, когда окно свёрнуто в таскбар. Закомментировал и в результате получил всю диалоговую панель темно-синего цвета. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2016, 08:44 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, "Что-то ты, Герасим, не договариваешь..." :) допиши ещё в начале dc.SetBkMode(TRANSPARENT); // это убирает закраску бакграунда под текстом, должно влиять только на рект текста, но фиг знает, может что увидим... и какого размера у тебя диалоговая панель? у меня код Код: plaintext 1. 2. 3. 4. 5. рисует на окне 1234567, красным цветом, окно белое ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2016, 11:24 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbЛизоблюд, "Что-то ты, Герасим, не договариваешь..." :) допиши ещё в начале dc.SetBkMode(TRANSPARENT); // это убирает закраску бакграунда под текстом, должно влиять только на рект текста, но фиг знает, может что увидим... и какого размера у тебя диалоговая панель? у меня код Код: plaintext 1. 2. 3. 4. 5. void CNivelir_4Dlg::OnPaint() { if (IsIconic()) { CPaintDC dc(this); // device context for painting dc.SetBkMode(TRANSPARENT); dc.SetTextColor(RGB(125,255,55)); dc.TextOut(400, 400, "1234567"); SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0); // Center icon in client rectangle int cxIcon = GetSystemMetrics(SM_CXICON); int cyIcon = GetSystemMetrics(SM_CYICON); CRect rect; GetClientRect(&rect); int x = (rect.Width() - cxIcon + 1) / 2; int y = (rect.Height() - cyIcon + 1) / 2; // Draw the icon dc.DrawIcon(x, y, m_hIcon); dc.TextOut(150,150,"rgtergtre"); } else { CDialog::OnPaint(); } } рисует на окне 1234567, красным цветом, окно белое ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2016, 11:50 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюдрисует на окне 1234567, красным цветом, окно белое Ничего не рисует ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2016, 11:52 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
а так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2016, 12:39 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMb, Я и говорю, не хочет он нам код весь показать... Ну, пусть парицо... Вообще, в диалоге (который вроде бы как используется) пытаться что-то самому рисовать в окне -- это как-то очень странно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2016, 12:43 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
MasterZiv, Ну, он, видимо, просто пробует, как оно вообще работает/не работает. А так да, у диалога свои приседания с отрисовкой, лучше так не делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2016, 13:18 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
http://www.codeproject.com/Articles/1035/Using-colors-in-CEdit-and-CStatic#_articleTop Кажется нужное нарыл, но пока не разобрался. How to Use Include the files ColorEdit.cpp, ColorEdit.h and Color.h in your project if your just working with Edit Boxes. If you want to incorporate colored static text also you would add the files ColorStatic.cpp, ColorStatic.h. In your dialogs header file add : Hide Copy Code #include "ColorEdit.h" #include "ColorStatic.h" //only if using colored static text. public: CColorEdit m_ebCtl; CColorStatic m_stText; //only if using colored static text. There are two ways you can associate your control id's with the classes. From now on I will assume you are using both classes. In your dialogs .cpp file add : Hide Copy Code void YourDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CYourDlg) //}}AFX_DATA_MAP DDX_Control(pDX, IDC_ST_TEXT, m_stText); DDX_Control(pDX, IDC_EB_CTL, m_ebCtl); } or Hide Copy Code BOOL CYourDlg::OnInitDialog() { // TODO: Add extra initialization here m_ebCtl.SubclassDlgItem(IDC_EB_CTL,this); m_stText.SubclassDlgItem(IDC_ST_TEXT,this); } Now that this is finished it is time to use the class. There are three functions available for Edit Boxes and two for Static Text. They are as follows: Hide Copy Code There are three functions available Currently: SetBkColor(COLORREF crColor) // Works for both classes SetTextColor(COLORREF crColor) // Works for both classes SetReadOnly(BOOL flag = TRUE) //This function is for CColorEdit only. In the file Color.h is the following code: Hide Copy Code // Color.h // Colorref's to use with your Programs #define RED RGB(127, 0, 0) #define GREEN RGB( 0,127, 0) #define BLUE RGB( 0, 0,127) #define LIGHTRED RGB(255, 0, 0) #define LIGHTGREEN RGB( 0,255, 0) #define LIGHTBLUE RGB( 0, 0,255) #define BLACK RGB( 0, 0, 0) #define WHITE RGB(255,255,255) #define GRAY RGB(192,192,192) These are just a few I picked out but add as many colors as you need. Here is how easy it is to use: Hide Copy Code m_ebCtl.SetTextColor(BLUE); //Changes the Edit Box text to Blue m_ebCtl.SetBkColor(WHITE); //By default your background color is the //same as your system color(color of dialog) m_ebCtl.SetReadOnly(); //This makes it so nobody can edit the text. //If you disable the box it does not let you //change colors. m_stText.SetTextColor(RED); //Changes the Static Text to Red m_stText.SetBkColor(GREEN); //You probably will not use it, but it's here. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2016, 21:13 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Все равно не получается. Ошибка на строке: SetTextColor(RGB(127,0,0)); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 02:05 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Кажется нужное нарыл, но пока не разобрался. По-моему, ты слегка запутался. То, что ты нарыл, это чьи-то самопальные классы для едитбокса и статика, которые скрывают установку цветов для отрисовки. Ошибка в SetTextColor потому что её надо звать с конкретного объекта, т.е. m_editBox.SetTextColor(127,0,0); Если тебе надо сделать статик цветным в проекте MFC: 0. Открываешь в редакторе ресурсов свой диалог и накидываешь туда статик. Ставишь ему ID например ID_LABEL 1. Заходишь в хедер своего диалога и добавляешь туда метод: Код: plaintext 1. 2. Заходишь в cpp код и добавляешь там реализацию этой функции: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Это почти базовый общий обработчик окна диалога. Почти ничем от WinAPI не отличается. Ещё раз: установку цвета детям надо делать не в OnPaint. В OnPaint диалог рисует сам себя. Контролы рисуют сами себя в _своих_ обработчиках. Из своих обработчиков они шлют сообщение WM_CTLCOLORSTATIC родителю. Оно прилетает в WindowProc. Родитель устанавливает цвет. Один важный момент, связанный с WM_CTLCOLORSTATIC: после установки обработчик диалога должен сразу вернуть TRUE, чтобы система не перекрыла сделанное дефолтным функционалом. Но WindowProc возвращает LRESULT, поэтому авторы придумали такой залепон(для себя): Код: plaintext 1. Это установка внутрь окна возвращаемого значения именно для обработчика диалога. Система потом у себя внутрях оттуда его выдернет, всё поймёт, и наступит счастье. И, вроде бы, при вызове диалога нормально, через DialogBox или CreateDialog, указывается функция-обработчик, возвращающая BOOL, и там такое делать не надо. Вроде бы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 06:48 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMb По-моему, ты слегка запутался. То, что ты нарыл, это чьи-то самопальные классы для едитбокса и статика, которые скрывают установку цветов для отрисовки. Ошибка в SetTextColor потому что её надо звать с конкретного объекта, т.е. m_editBox.SetTextColor(127,0,0); Это я пробовал. Не помогает. Попробую твой комплексный метод. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:21 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMb, вот это похоже на правду. спасибо, мне было бы лень все это писать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:45 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
А что можно сказать вот об этой подборке: http://www.codeforge.com/read/106351/ColorStatic.cpp__html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2016, 20:36 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, мой браузер показывает только верхнюю часть кода(другого у меня нет, так как мы сидим в строго охраняемом бункере). Скачать без регистрации не могу. В общем, только хрустальный шар ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2016, 07:14 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbЛизоблюд, мой браузер показывает только верхнюю часть кода(другого у меня нет, так как мы сидим в строго охраняемом бункере). Скачать без регистрации не могу. В общем, только хрустальный шар Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2016, 08:05 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, а, ну тут тоже самое, что я написал, плюс MFC-шный пинг-понг сообщениями между родителем и детём(у них там своя особая отмосфера разбора оконных сообщений внутри). То, что я обработал в родителе, отпинывается в MFC ещё обратно детю, но вот в этот MFC-шный обработчик(CColorStatic::CtlColor). И там, оно "автоматом" (если предварительно задали m_crFg и m_crBg) установится и вернётся родителю, который тут же вернёт его детю, но в winAPI-обёртку. Работать будет, да :) Единственно, что мне тут никогда не нравилось, это возвращаемый функцией HBRUSH. Его, как бы, удобно создать на момент вызова, по ситуации, отправить и забыть. Но так нельзя делать. Поэтому приходится его помнить и чистить, в случае пересоздания. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2016, 10:05 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2016, 10:27 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Не понимаю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2016, 19:47 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдНе понимаюзабыл реализовать деструктор? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2016, 00:12 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
egorychЛизоблюдНе понимаюзабыл реализовать деструктор? А куда здесь деструктор пришпандырить: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2016, 19:31 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Собрал проект с нуля. Ошибок нет. Но в готовом проекте не виден static и естественно его текст. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2016, 09:37 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, Ты молодец. Ты -- просто наш герой. Только я не понимаю другое -- мы-то тут все при чём ? У тебя есть вопросы ? Задавай их. Желательно, не в стиле блога, а так, как принято на форумах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2016, 18:19 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
MasterZivЛизоблюд, Ты молодец. Ты -- просто наш герой. Только я не понимаю другое -- мы-то тут все при чём ? У тебя есть вопросы ? Задавай их. Желательно, не в стиле блога, а так, как принято на форумах. Не понял иронию. У меня ошибок нет. Но и цель не достигнута. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2016, 19:00 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, я вот тоже не пойму, зачем тебе цветной статик, если ты даже не знаешь, как им пользоваться :) по делу: добавь его в редакторе ресурсов на диалог(чисто телепатически я надеюсь, что у тебя dialog based MFC приложение). Внимательно пропиши ему идентификатор, и чтобы он совпадал с тем, что в коде написан. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2016, 06:37 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=39150129&tid=2018611]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
80ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
66ms |
get tp. blocked users: |
1ms |
| others: | 16ms |
| total: | 206ms |

| 0 / 0 |
