Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Не получается изменить размер текста и его цвет Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.01.2016, 22:40 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдНе получается изменить размер текста и его цвет Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Correct use of SetFont() in MFC ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.01.2016, 23:27 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, шрифт должен жить все время использование его приложением. ты же его тут же и уничтожаешь. (неявно) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2016, 05:50 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
YesSqlЛизоблюдНе получается изменить размер текста и его цвет Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Correct use of SetFont() in MFC Пробовал. Размер шрифта не меняет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2016, 00:26 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
MasterZivЛизоблюд, шрифт должен жить все время использование его приложением. ты же его тут же и уничтожаешь. (неявно) Код: plaintext 1. Тоже не помогает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2016, 00:27 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, используй теги SRC для улучшения читаемости исходников. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2016, 01:28 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
maytonЛизоблюд, используй теги SRC для улучшения читаемости исходников. Поясни ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2016, 20:45 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдmaytonЛизоблюд, используй теги SRC для улучшения читаемости исходников. Поясни Вот так удобно читать [ SRC c++] Код: plaintext 1. 2. 3. [ /SRC ] А так - неудобно int main(int argc,char **argv,char **env){ return -1; } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2016, 20:53 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
LINK : fatal error LNK1104: cannot open file "nafxcw.lib" Может поэтому с цветом не получается ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2016, 23:33 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
[quot Лизоблюд]MasterZivТоже не помогает. Если код тот, который выше, то после выхода из скопа HFONT погибнет вместе с CFont-объектом. CFont m_Font; - надо вынести в описание класса диалога, тогда будет ок. Цвет задавать можно в WM_CTLCOLORSTATIC - для статиков. в wParam приходит DC, туда надо SetForeColor-ом установить нужный цвет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2016, 06:40 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдLINK : fatal error LNK1104: cannot open file "nafxcw.lib" Может поэтому с цветом не получается ? Нет, не поэтому. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2016, 14:35 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
MasterZivЛизоблюдLINK : fatal error LNK1104: cannot open file "nafxcw.lib" Может поэтому с цветом не получается ? Нет, не поэтому. А покраска кнопки(Button) оказалась зависимой именно от этого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2016, 23:34 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
[quot CEMb]Лизоблюдпропущено... Если код тот, который выше, то после выхода из скопа HFONT погибнет вместе с CFont-объектом. CFont m_Font; - надо вынести в описание класса диалога, тогда будет ок. Цвет задавать можно в WM_CTLCOLORSTATIC - для статиков. в wParam приходит DC, туда надо SetForeColor-ом установить нужный цвет Все именно так и оказалось. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2016, 23:40 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
[quot CEMb]Лизоблюдпропущено... Если код тот, который выше, то после выхода из скопа HFONT погибнет вместе с CFont-объектом. CFont m_Font; - надо вынести в описание класса диалога, тогда будет ок. Цвет задавать можно в WM_CTLCOLORSTATIC - для статиков. в wParam приходит DC, туда надо SetForeColor-ом установить нужный цвет Хочу текст покрасить: dc.SetTextColor(RGB(255,125,0)); dc.TextOut(150,120,IDC_STATIC1); У меня это в OnPaint. Тоже не на месте ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2016, 23:43 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
[quot Лизоблюд]CEMbпропущено... Хочу текст покрасить: dc.SetTextColor(RGB(255,125,0)); dc.TextOut(150,120,IDC_STATIC1); У меня это в OnPaint. Тоже не на месте ? покрасить текст ЧЕГО? если того контрола, чей OnPaint, то на месте, иначе -нет. По фантазиями похоже, что НЕ НА МЕСТЕ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2016, 02:12 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
WM_CTLCOLORSTATIC это сообщение прилетает родителю статика, который в данный момент отрисовывается. Родитель у себя в обработчике настраивает ему DC перед отрисовкой. Сделано это в родителях, так как это обычно диалоги, и хендлеры их в любом случае пишутся программистами. Хендлер статиков "скрыт", переопределить его немного нетривиальная задачка :) Чуть подробнее. Статик рисуется, у него OnPaint, он берёт с себя DC, потом шлёт родителю сообщение WM_CTLCOLORSTATIC, указывая там этот DC и себя. Родитель "настраивает" DC (наш код) и расслабляется. Управление возвращается в статик, и он сам уже потом делает TextOut (DrawText, если быть точным) внутри своего кода и отпускает DC. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2016, 06:42 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbWM_CTLCOLORSTATIC это сообщение прилетает родителю статика, который в данный момент отрисовывается. Родитель у себя в обработчике настраивает ему DC перед отрисовкой. Сделано это в родителях, так как это обычно диалоги, и хендлеры их в любом случае пишутся программистами. Хендлер статиков "скрыт", переопределить его немного нетривиальная задачка :) Чуть подробнее. Статик рисуется, у него OnPaint, он берёт с себя DC, потом шлёт родителю сообщение WM_CTLCOLORSTATIC, указывая там этот DC и себя. Родитель "настраивает" DC (наш код) и расслабляется. Управление возвращается в статик, и он сам уже потом делает TextOut (DrawText, если быть точным) внутри своего кода и отпускает DC. Витиевато, но разберусь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2016, 12:43 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CPaintDC dc(this); // device context for painting dc.SetTextColor(RGB(255,0,0)); dc.TextOut(10, 10, "test_text"); Не идет. Ваще текста нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2016, 20:28 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, приведи весь код, пожалуйста. Весь код окна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2016, 20:56 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, Если это в OnPaint, то в конце можно попробовать добавить ValidateRect(GetSafeHwnd(), NULL); Хотя по идее (не знаю, но) CPaint в деструкторе должен это делать сам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2016, 07:02 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
MasterZivЛизоблюд, приведи весь код, пожалуйста. Весь код окна. Вечером - сейчас на работу бегу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2016, 08:48 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
MasterZivЛизоблюд, приведи весь код, пожалуйста. Весь код окна. void CAsdfgDlg::OnPaint() { if (IsIconic()) { CPaintDC dc(this); // device context for painting dc.SetTextColor(RGB(255,0,0)); dc.TextOut(100,100,"1234567"); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2016, 18:26 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, это не весь код. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2016, 08:15 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
MasterZivЛизоблюд, это не весь код. У меня весь. Поэтому, видимо, и не работает. Надо чота в заголовочный записать ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2016, 22:21 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдMasterZivЛизоблюд, это не весь код. У меня весь. Поэтому, видимо, и не работает. Надо чота в заголовочный записать ? Мне нужно для MFCAppWizard[exe] Visual C++. Консоль и Win API не предлагать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2016, 23:47 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#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 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Должно быть как вверху, а у меня как внизу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2016, 08:46 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, а ты на диалог эти контролы добавил? Руками или программно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2016, 09:16 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbЛизоблюд, а ты на диалог эти контролы добавил? Руками или программно? Как только я пишу: Код: plaintext 1. 2. 3. 4. 5. static исчезает и естественно текст тоже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2016, 11:39 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, А что у тебя в заголовочном файле про m_stText написано? Должно быть CStatic m_stText; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2016, 11:55 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Устал за Лизоблюдом сорцы подсвечивать. Фух... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2016, 13:41 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbЛизоблюд, А что у тебя в заголовочном файле про m_stText написано? Должно быть CStatic m_stText; // ColorStatic.cpp : implementation file // #include "stdafx.h" #include "ColorStatic.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CColorStatic CColorStatic::CColorStatic() { m_TextColor=RGB(11,1,111); } CColorStatic::~CColorStatic() { } BEGIN_MESSAGE_MAP(CColorStatic, CStatic) //{{AFX_MSG_MAP(CColorStatic) ON_WM_CREATE() ON_WM_PAINT() //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CColorStatic message handlers int CColorStatic::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CStatic::OnCreate(lpCreateStruct) == -1) return -1; // TODO: Add your specialized creation code here return 0; } void CColorStatic::OnPaint() { CPaintDC dc(this); // device context for painting // TODO: Add your message handler code here CRect rect; GetClientRect(&rect); dc.SetBkColor(m_BackColor); dc.SetBkMode(TRANSPARENT); CFont *pFont=GetParent()->GetFont(); CFont *pOldFont; pOldFont=dc.SelectObject(pFont); dc.SetTextColor(m_TextColor); dc.DrawText(m_strCaption,&rect,DT_CENTER); dc.SelectObject(pOldFont); // Do not call CStatic::OnPaint() for painting messages } void CColorStatic::Create(CString strCaption, COLORREF BackColor) { } void CColorStatic::SetCaption(CString strCaption) { m_strCaption=strCaption; } void CColorStatic::SetBackColor(COLORREF BackColor) { m_BackColor=BackColor; } void CColorStatic::SetTextColor(COLORREF TextColor) { m_TextColor=TextColor; } #if !defined(AFX_COLORSTATIC_H__57522FA8_09AB_470B_A4AB_0D85B93794EB__INCLUDED_) #define AFX_COLORSTATIC_H__57522FA8_09AB_470B_A4AB_0D85B93794EB__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 // ColorStatic.h : header file // ///////////////////////////////////////////////////////////////////////////// // CColorStatic window class CColorStatic : public CStatic { // Construction public: CColorStatic(); // Attributes public: // Operations public: // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CColorStatic) //}}AFX_VIRTUAL // Implementation public: void SetTextColor(COLORREF TextColor); COLORREF m_TextColor; void SetBackColor(COLORREF BackColor); void SetCaption(CString strCaption); void Create(CString strCaption,COLORREF BackColor); COLORREF m_BackColor; CString m_strCaption; virtual ~CColorStatic(); // Generated message map functions protected: //{{AFX_CColorStatic afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); afx_msg void OnPaint(); //}}AFX_MSG DECLARE_MESSAGE_MAP() }; ///////////////////////////////////////////////////////////////////////////// //{{AFX_INSERT_LOCATION}} // Microsoft Visual C++ will insert additional declarations immediately before the previous line. #endif // !defined(AFX_COLORSTATIC_H__57522FA8_09AB_470B_A4AB_0D85B93794EB__INCLUDED_) // abrakaDlg.h : header file // #if !defined(AFX_ABRAKADLG_H__75927752_7F10_4679_811C_F158F77E4716__INCLUDED_) #define AFX_ABRAKADLG_H__75927752_7F10_4679_811C_F158F77E4716__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #include "ColorStatic.h" ///////////////////////////////////////////////////////////////////////////// // CAbrakaDlg dialog class CAbrakaDlg : public CDialog { // Construction public: CAbrakaDlg(CWnd* pParent = NULL); // standard constructor CColorStatic m_stText; // Dialog Data //{{AFX_DATA(CAbrakaDlg) enum { IDD = IDD_ABRAKA_DIALOG }; // NOTE: the ClassWizard will add data members here //}}AFX_DATA // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CAbrakaDlg) protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support //}}AFX_VIRTUAL // Implementation protected: HICON m_hIcon; // Generated message map functions //{{AFX_CAbrakaDlg virtual BOOL OnInitDialog(); afx_msg void OnPaint(); afx_msg HCURSOR OnQueryDragIcon(); //}}AFX_MSG DECLARE_MESSAGE_MAP() }; //{{AFX_INSERT_LOCATION}} // Microsoft Visual C++ will insert additional declarations immediately before the previous line. #endif // !defined(AFX_ABRAKADLG_H__75927752_7F10_4679_811C_F158F77E4716__INCLUDED_) // abrakaDlg.cpp : implementation file // #include "stdafx.h" #include "abraka.h" #include "abrakaDlg.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CAbrakaDlg dialog CAbrakaDlg::CAbrakaDlg(CWnd* pParent /*=NULL*/) : CDialog(CAbrakaDlg::IDD, pParent) { //{{AFX_DATA_INIT(CAbrakaDlg) // NOTE: the ClassWizard will add member initialization here //}}AFX_DATA_INIT // Note that LoadIcon does not require a subsequent DestroyIcon in Win32 m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME); } void CAbrakaDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CAbrakaDlg) // NOTE: the ClassWizard will add DDX and DDV calls here DDX_Control(pDX, IDC_ST_TEXT, m_stText); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CAbrakaDlg, CDialog) //{{AFX_MSG_MAP(CAbrakaDlg) ON_WM_PAINT() ON_WM_QUERYDRAGICON() //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CAbrakaDlg message handlers BOOL CAbrakaDlg::OnInitDialog() { CDialog::OnInitDialog(); // Set the icon for this dialog. The framework does this automatically // when the application's main window is not a dialog SetIcon(m_hIcon, TRUE); // Set big icon SetIcon(m_hIcon, FALSE); // Set small icon // TODO: Add extra initialization here //m_stText.SubclassDlgItem(IDC_ST_TEXT, this); m_stText.SetTextColor(BLACK); m_stText.SetBackColor(GREEN); //m_stText.RedrawWindow(); //m_stText.Invalidate(FALSE); //m_stText.SetWindowText("erfgpojrgpo"); //m_stText.UpdateWindow(); //GetDlgItem(IDC_ST_TEXT)->ShowWindow(true); //m_stText.SetWindowText("34t34t"); return TRUE; // return TRUE unless you set the focus to a control } // If you add a minimize button to your dialog, you will need the code below // to draw the icon. For MFC applications using the document/view model, // this is automatically done for you by the framework. void CAbrakaDlg::OnPaint() { if (IsIconic()) { CPaintDC dc(this); // device context for painting 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); } else { CDialog::OnPaint(); } } // The system calls this to obtain the cursor to display while the user drags // the minimized window. HCURSOR CAbrakaDlg::OnQueryDragIcon() { return (HCURSOR) m_hIcon; } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2016, 18:30 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
// abraka.h : main header file for the ABRAKA application // #if !defined(AFX_ABRAKA_H__18DC61F7_F065_4E06_887B_27FB85BB2E7D__INCLUDED_) #define AFX_ABRAKA_H__18DC61F7_F065_4E06_887B_27FB85BB2E7D__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #ifndef __AFXWIN_H__ #error include 'stdafx.h' before including this file for PCH #endif #include "resource.h" // main symbols //#define RED RGB(127,0,0) //#define GREEN RGB(0,127,0) #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) ///////////////////////////////////////////////////////////////////////////// // CAbrakaApp: // See abraka.cpp for the implementation of this class // class CAbrakaApp : public CWinApp { public: CAbrakaApp(); // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CAbrakaApp) public: virtual BOOL InitInstance(); //}}AFX_VIRTUAL // Implementation //{{AFX_CAbrakaApp // NOTE - the ClassWizard will add and remove member functions here. // DO NOT EDIT what you see in these blocks of generated code ! //}}AFX_MSG DECLARE_MESSAGE_MAP() }; ///////////////////////////////////////////////////////////////////////////// //{{AFX_INSERT_LOCATION}} // Microsoft Visual C++ will insert additional declarations immediately before the previous line. #endif // !defined(AFX_ABRAKA_H__18DC61F7_F065_4E06_887B_27FB85BB2E7D__INCLUDED_) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2016, 18:34 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Убери из проекта CColorStatic и сделай просто CStatic. Мельком глянул код CColorStatic. Автор полностью заменяет отрисовку CStatic, не учитывая стили окна. Зачем он при этом от статика отнаследовался, непонятно. Разбираться, почему его код не работает, мне не хочется. Обычный CStatic у меня работает, и с заведённой переменной на него в классе и без. А лучше создай новый проект и добавь туда WindowProc, как я раньше рассказывал, это 3 минуты дел, и всё заработает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2016, 06:41 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbУбери из проекта CColorStatic и сделай просто CStatic. Мельком глянул код CColorStatic. Автор полностью заменяет отрисовку CStatic, не учитывая стили окна. Зачем он при этом от статика отнаследовался, непонятно. Разбираться, почему его код не работает, мне не хочется. Обычный CStatic у меня работает, и с заведённой переменной на него в классе и без. А лучше создай новый проект и добавь туда WindowProc, как я раньше рассказывал, это 3 минуты дел, и всё заработает. Эти 3 минуты привести можешь ? Я так понял, что они у тебя есть готовые. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2016, 11:33 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
MFCTestDlg.h Код: 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. MFCTestDlg.cpp Код: 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. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2016, 11:50 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMb return static_cast<HCURSOR>(m_hIcon); } [/src] [/spoiler] Спасибо. Посмотрю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2016, 17:47 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
AbrDlh.h Код: 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. AbrDlg.cpp Код: 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. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2016, 21:21 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд AbrDlh.h Код: 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. AbrDlg.cpp Код: 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. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. Ошибок нет. Но цвета текста тоже нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2016, 21:22 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Встань брекпоинтом на строчку Код: plaintext 1. и посмотри, выполнение туда приходит или нет. Если нет: - Встань брекпоинтом на строчку выше, есть ли там выполнение: - - Если нет, у тебя нет на диалоге статика. - - Если приходит, у тебя неправильно прописан идентификатор статика. Если приходит: - У тебя чёрно-белый монитор :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2016, 06:39 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
После ввода строки: DDX_Control(pDX, IDC_TEXT, m_TextColor); static пропадает и больше я его не видел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 08:56 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдПосле ввода строки: DDX_Control(pDX, IDC_TEXT, m_TextColor); static пропадает и больше я его не видел. Если в заголовочном CStatic m_Text, то не исчезает. Если в заголовочном CColorStatic m_Text, то исчезает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 12:07 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
http://www.codeproject.com/Articles/1035/Using-colors-in-CEdit-and-CStatic Introduction I created these two classes to make changing the color of your Edit Box text and your Static text easy. I didn't need all the overhead of a CRichEditCtrl , but I did need to change the color of my text as well as the background color of the box. CStatic didn't have an easy way of changing the color of your text either. These classes are derived from CEdit and CStatic. 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. I hope someone out there finds this useful License This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below. A list of licenses authors might use can be found here ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 12:12 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Брекпоинты что-нибудь показали? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 13:42 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbБрекпоинты что-нибудь показали? Показали, что все работает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 15:53 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CDialog::OnInitDialog(); // Set the icon for this dialog. The framework does this automatically // when the application's main window is not a dialog SetIcon(m_hIcon, TRUE); // Set big icon SetIcon(m_hIcon, FALSE); // Set small icon // TODO: Add extra initialization here ShowWindow(SW_SHOW); m_Text.SubclassDlgItem(IDC_TEXT, this); m_Text.SetTextColor(RED); GetDlgItem(IDC_TEXT)->SetWindowText("your string"); return TRUE; // return TRUE unless you set the focus to a control ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 16:00 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
В Win 32 Application работает: #include <afxwin.h> class CMyWin: public CFrameWnd { public: CMyWin(); afx_msg void OnPaint(); DECLARE_MESSAGE_MAP() }; CMyWin::CMyWin() { Create(NULL,"Мое окошко"); } class CMyApp: public CWinApp { public: virtual BOOL InitInstance(); }; BOOL CMyApp::InitInstance() { MessageBox(NULL, "Д и а л о ж к а","Message",MB_OK|MB_SYSTEMMODAL|MB_ICONEXCLAMATION); m_pMainWnd=new CMyWin(); m_pMainWnd->ShowWindow(m_nCmdShow); m_pMainWnd->UpdateWindow(); return TRUE; } BEGIN_MESSAGE_MAP(CMyWin, CFrameWnd) ON_WM_PAINT() END_MESSAGE_MAP() void CMyWin::OnPaint() { CPaintDC dc(this); dc.SetTextColor(RGB(225,0,125)); dc.TextOut(100,100,"К в а д р а т",13); } CMyApp MyApp; В MFC AppWizard[exe]: dc.SetTextColor(RGB(225,0,125)); dc.TextOut(100,100,"К в а д р а т",13); не преодолел ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2016, 23:32 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд В MFC AppWizard[exe]: dc.SetTextColor(RGB(225,0,125)); dc.TextOut(100,100,"К в а д р а т",13); не преодолел Пробую перейти на Win32 Application, но необходимость использовать типа FlexGrid заставляет сильно сомневаться. FlexGrid давно одолел, даже сам дописал пару функций. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2016, 12:19 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, Код: plaintext 1. 2. 3. 4. 5. 6. у меня работает. CMyWin у меня диалог, но с CWnd тоже работать должно. Обязано :) FlexGridэто который FlexGrid? Микрософтовский? Вроде ко всем микрософтовским компонентам можно сделать враппер через #import, я давно лет назад делал для MS Chart и использовал её в Win32API приложении. Но лучше/быстрее/удобнее наверно с использованием MFC. Не знаю, почему у тебя раскраска текста не работает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2016, 06:36 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbНе знаю, почему у тебя раскраска текста не работает... Потому что диалог в AppWizard[exe]. В win 32 Application у меня все тоже работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2016, 07:57 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, Так и у меня MFC dialog-based через визард сделанное. Я уже начинаю думать, что у тебя какая-то странная версия MFC там... о_о ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2016, 10:18 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbЛизоблюд, Так и у меня MFC dialog-based через визард сделанное. Я уже начинаю думать, что у тебя какая-то странная версия MFC там... о_о Кусок программы Код: sql 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2016, 12:20 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдCEMbЛизоблюд, Так и у меня MFC dialog-based через визард сделанное. Я уже начинаю думать, что у тебя какая-то странная версия MFC там... о_о Кусок программы Код: sql 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. Возможно текст вывожу неправильно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2016, 12:22 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2016, 12:33 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbЛизоблюд, // ТУТ ДОЛЖНО БЫТЬ! А размер текста. Я его менял в статике. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2016, 13:38 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдCEMbЛизоблюд, // ТУТ ДОЛЖНО БЫТЬ! А размер текста. Я его менял в статике. Можно ли это делать в dc ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2016, 13:42 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, Размер текста устанавивается фонтом, который надо SelectObject в dc и после отрисовки не забыть вынуть обратно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2016, 13:46 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbЛизоблюд, Размер текста устанавивается фонтом, который надо SelectObject в dc и после отрисовки не забыть вынуть обратно. CPaintDC dc(this); CFont Font; LOGFONT lf; ::ZeroMemory (&lf, sizeof (lf)); lf.lfHeight = 260; lf.lfWeight = FW_BOLD; lf.lfEscapement = i; lf.lfOrientation = i; ::lstrcpy (lf.lfFaceName, _T ("Arial")); Font.CreatePointFontIndirect (&lf); CFont* pOldFont = dc.SelectObject (&Font); dc.SetTextColor(RGB(255,125,0)); dc.TextOut(10,400,"Вводим"); CDialog::OnPaint(); Премного благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2016, 14:19 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CPaintDC dc(this); CFont Font; LOGFONT lf; ::ZeroMemory (&lf, sizeof (lf)); lf.lfHeight = 160; lf.lfWeight = FW_BOLD; lf.lfEscapement = i; lf.lfOrientation = i; ::lstrcpy (lf.lfFaceName, _T ("Arial")); Font.CreatePointFontIndirect (&lf); CFont* pOldFont = dc.SelectObject (&Font); dc.SetTextColor(RGB(255,125,0)); GetDlgItem(IDC_ST_TEXT)->SetFont(&m_Font); //GetDlgItem(IDC_ST_TEXT)->ShowWindow(true) dc.TextOut(10,250,"Вводим"); Осталось понять как покрасить текст статика. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2016, 18:39 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
А этому где место: case WM_CTLCOLORSTATIC: { HDC hdcStatic = (HDC) wParam; SetTextColor(hdcStatic, RGB(0,0,255)); SetBkColor(hdcStatic, RGB(250,250,0)); return (INT_PTR)CreateSolidBrush(RGB(250,250,0)); } Или в диалоговую панель это не годится ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2016, 22:31 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдА этому где место: case WM_CTLCOLORSTATIC: { HDC hdcStatic = (HDC) wParam; SetTextColor(hdcStatic, RGB(0,0,255)); SetBkColor(hdcStatic, RGB(250,250,0)); return (INT_PTR)CreateSolidBrush(RGB(250,250,0)); } Или в диалоговую панель это не годится ? Имел ввиду для статика. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2016, 22:51 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдА этому где место: case WM_CTLCOLORSTATIC: { HDC hdcStatic = (HDC) wParam; SetTextColor(hdcStatic, RGB(0,0,255)); SetBkColor(hdcStatic, RGB(250,250,0)); return (INT_PTR)CreateSolidBrush(RGB(250,250,0)); } Или в диалоговую панель это не годится ? 18729546 , годится, добавить в WindowProc только помни, что CreateSolidBrush(RGB(250,250,0)) тут - это ресурсник, так как система(статик) его освобождать не будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2016, 06:16 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
и, да, про фонты: // ....... CFont* pOldFont = dc.SelectObject (&Font); dc.SetTextColor(RGB(255,125,0)); GetDlgItem(IDC_ST_TEXT)->SetFont(&m_Font); //GetDlgItem(IDC_ST_TEXT)->ShowWindow(true) dc.TextOut(10,250,"Вводим"); dc.SelectObject (pOldFont); // - после всего вернуть обратно! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2016, 06:20 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
http://www.codeproject.com/Articles/1035/Using-colors-in-CEdit-and-CStatic 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. С этим абзацем не разобрался. Это куда надо деть ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2016, 16:40 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдSetBkColor(COLORREF crColor) // Works for both classes SetTextColor(COLORREF crColor) // Works for both classes SetReadOnly(BOOL flag = TRUE) //This function is for CColorEdit only. С этим абзацем не разобрался. Это куда надо деть ? Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2016, 06:04 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbЛизоблюдSetBkColor(COLORREF crColor) // Works for both classes SetTextColor(COLORREF crColor) // Works for both classes SetReadOnly(BOOL flag = TRUE) //This function is for CColorEdit only. С этим абзацем не разобрался. Это куда надо деть ? Код: plaintext 1. 2. 3. 4. 5. 6. 7. Меня интересует статик, а не Эдит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2016, 21:32 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
[quot CEMb]ЛизоблюдSetBkColor(COLORREF crColor) // Works for both classes SetTextColor(COLORREF crColor) // Works for both classes SetReadOnly(BOOL flag = TRUE) //This function is for CColorEdit only. С этим абзацем не разобрался. Это куда надо деть ? Это где надо прописать ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2016, 01:44 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, Например, в OnInitDialog оно отличается от обычно тем, что обычное запрашивает у тебя цвет в момент рисования, а с CodeProject-а оно запоминает цвет в объекте самого контрола, и потом внутри на отрисовке(которая какая-то странная, но это другая песня) этот цвет уже знает и потому не спрашивает, потому это можно задать 1 раз в самом начале и забыть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2016, 06:25 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
SetBkColor(COLORREF crColor) // Works for both classes SetTextColor(COLORREF crColor) // Works for both classes SetReadOnly(BOOL flag = TRUE) Это все уже есть в ColorStatic.h: // Implementation public: void SetTextColor(COLORREF TextColor); COLORREF m_TextColor; void SetBackColor(COLORREF BackColor); void SetCaption(CString strCaption); void Create(CString strCaption,COLORREF BackColor); COLORREF m_BackColor; CString m_strCaption; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2016, 19:54 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
да, а в OnInitDialog надо вызвать Код: plaintext 1. 2. 3. и в заголовке диалога добавить: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2016, 06:36 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbда, а в OnInitDialog надо вызвать Код: plaintext 1. 2. 3. и в заголовке диалога добавить: Код: plaintext 1. Все у меня именно так и сделано. Только для static. Edit мне не нужен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2016, 06:38 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
И работает?... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2016, 06:40 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbИ работает?... :) Если бы работало, то я не задавал бы вопросы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2016, 09:24 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюд, Ну у тебя исходники этого статика есть, зайди дебагом и посмотри, почему цветом не рисуется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2016, 12:24 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbЛизоблюд, Ну у тебя исходники этого статика есть, зайди дебагом и посмотри, почему цветом не рисуется. Дебаггер ничего не показал. ПРивожу тексты кодов: colorstatic.h Код: sql 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. textDlg.h Код: sql 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. colorstatic.cpp Код: sql 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. 78. 79. 80. 81. 82. 83. 84. 85. 86. textDlg.cpp Код: sql 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. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2016, 19:58 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Дебаггер ничего не показал. Эм... Дебаггер, если его используют, не может ничего не показать :) Он 100% покажет одно из двух: вход в покраску был или вход в покраску не был. сам код CColorStatic смотреть и проверять, почему он не работает - не охота, тем более, что я его считаю странным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2016, 07:10 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Ошибок нет. И цвета тоже нет. После ввода DDX в Dlg.cpp static исчезает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2016, 08:51 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
для раскраски диалоговых элементов обычно используют перехват WM_CTLCOLOR / WM_CTLCOLORSTATIC Кто-нибудь сможет прокомментировать ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2016, 23:49 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюддля раскраски диалоговых элементов обычно используют перехват WM_CTLCOLOR / WM_CTLCOLORSTATIC Кто-нибудь сможет прокомментировать ? А что тут комментировать ? Так и есть. Только не перехват, а обработку этих сообщений, потому что перехватывать их не нужно, они просто шлются родительскому диалогу. Да, в MFC можно за счёт механизма Notificaion Reflection обрабатывать эти сообщения в наследнике контрола (Static или ещё какого-то) и таким образом реализовать управление цветами в какой-то библиотеке контролов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2016, 23:54 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лизоблюддля раскраски диалоговых элементов обычно используют перехват WM_CTLCOLOR / WM_CTLCOLORSTATIC Кто-нибудь сможет прокомментировать ?я уже два раза в треде объяснял, как это работает, один из них подробно про механизм работы, даже пример накатал. Чего непонятно-то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2016, 06:20 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbЛизоблюддля раскраски диалоговых элементов обычно используют перехват WM_CTLCOLOR / WM_CTLCOLORSTATIC Кто-нибудь сможет прокомментировать ?я уже два раза в треде объяснял, как это работает, один из них подробно про механизм работы, даже пример накатал. Чего непонятно-то? Не кипятись. Разберусь. Спасибо. Все когда-то делаешь первый раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2016, 06:38 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
я не кипячусь, я удивляюсь :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2016, 09:34 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbя не кипячусь, я удивляюсь :) Да лана. Ты крутой программист, а я так себе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2016, 19:50 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbя не кипячусь, я удивляюсь :) Просто я писал в основном математику. Ну и немного дизайн. Захотелось сделать несерое приложение. Вот и занялся цветом. Цвета выбираю блеклые, чтобы не давило на психику при пользовании. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2016, 19:52 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдCEMbя не кипячусь, я удивляюсь :) Просто я писал в основном математику. Ну и немного дизайн. Захотелось сделать несерое приложение. Вот и занялся цветом. Цвета выбираю блеклые, чтобы не давило на психику при пользовании. Не читал, но осуждаю (с) Топик не читал, но раз он уже на 5 страницах - это серьезно. За этот пост глаз зацепился. Как пользователь, из множества попыток сделать "несерое" приложение видел только одну удачную: winamp (если кто помнит что это) В свое время был тупик в развитии, занялись раскрашиванием, типа надо тут подсветить красным, тут желтым и т.д. и т.п., но цвета быстро кончились, а жопа осталась. Жопа была в том что надо было прогу кардинально переделывать, искать другие решения организации интерфейса с пользователем, а не превращать интерфейс в гирлянду новогодней елки. Прогу переделали, сейчас все достаточно монотонно в стиле виндовса, только чуть-чуть выделения цветом самых важных вещей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2016, 20:47 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Dima T В свое время был тупик в развитии, занялись раскрашиванием, типа надо тут подсветить красным, тут желтым и т.д. и т.п., но цвета быстро кончились, а жопа осталась. Жопа была в том что надо было прогу кардинально переделывать, искать другие решения организации интерфейса с пользователем, а не превращать интерфейс в гирлянду новогодней елки. Прогу переделали, сейчас все достаточно монотонно в стиле виндовса, только чуть-чуть выделения цветом самых важных вещей. Где ты видишь гирлянду ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2016, 21:50 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдDima T В свое время был тупик в развитии, занялись раскрашиванием, типа надо тут подсветить красным, тут желтым и т.д. и т.п., но цвета быстро кончились, а жопа осталась. Жопа была в том что надо было прогу кардинально переделывать, искать другие решения организации интерфейса с пользователем, а не превращать интерфейс в гирлянду новогодней елки. Прогу переделали, сейчас все достаточно монотонно в стиле виндовса, только чуть-чуть выделения цветом самых важных вещей. Где ты видишь гирлянду ? только чуть-чуть выделения цветом самых важных вещей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2016, 23:11 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдЛизоблюдпропущено...Где ты видишь гирлянду ?только чуть-чуть выделения цветом самых важных вещей.особенно та зелёная полоса сверху с нечитаемым рыжим текстом ))) и слово "Вводим" на полформы. Не делай так, никогда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2016, 23:15 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдCEMbя не кипячусь, я удивляюсь :) Просто я писал в основном математику. Ну и немного дизайн. Захотелось сделать несерое приложение. Вот и занялся цветом. Цвета выбираю блеклые, чтобы не давило на психику при пользовании. НАКОЙ ! Вот идиотичнее идеи вообще нельзя придумать. Не ну может там для эргономики нужно выделить краным какое-то сообщение или что-то в этом роде -- это понятно. Но вот просто так с бухты-барахты красить контролы ... Приложения должны быть ВСЕ ОДИНАКОВЫЕ, чтобы глаз не вынужден был привыкать к виду каждого окна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2016, 23:32 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
egorychЛизоблюдпропущено... только чуть-чуть выделения цветом самых важных вещей.особенно та зелёная полоса сверху с нечитаемым рыжим текстом ))) и слово "Вводим" на полформы. Не делай так, никогда. Ага, и полформы пустоты... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2016, 23:39 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдГде ты видишь гирлянду ? Ну непонятно, что ты тут уже 5 страниц пишешь. WM_CTLCOLOR вроде уже давно сказали, далее дело техники. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2016, 23:40 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Ну и конечно вспоминается сразу же про 7 красных линий ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2016, 23:46 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
egorychЛизоблюдпропущено... только чуть-чуть выделения цветом самых важных вещей.особенно та зелёная полоса сверху с нечитаемым рыжим текстом ))) и слово "Вводим" на полформы. Не делай так, никогда. Неужели непонятно, что это все пока ? И слово вводим крупно и не на месте. Пока делается можно как угодно изголяться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 06:54 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Ооо... это моя любимая тема, украшение приложений В своё время страдал тем, что придумывал для каждого нового приложения свой интерфейс и скинировал. @#$! Уже давно выздоровел, но ещё куча программ с дебильными интерфейсами у меня осталась. И надо бы убрать всё нафиг, но лень :) И ладно ещё когда это какой-нибудь entertainment, а то ведь есть просто рабочие вещи. Однажды юзеру объяснял, как настроить программу, "нажми на ту кнопку ... " - "о, а я и не понял, что это кнопка, я думал, это для красоты..." ... -_- Хотя это была просто кнопка с интерактивной(подсвечивающейся при наведении мышью) иконкой. Короче, если хочется красоты - надо просто добавить манифесть в проект, и программа станет красивая, как и винда. Красивая/некрасивая - это неважно, главное - однообразная . Главное, чтобы юзеру было проще, привычнее с ней осваиваться. Ты крутой программистэто всё сомнительно, относительно и зыбко :) Одно время назад меня называли "гуру" и ставили всем в пример, а потом те же люди с угрозами выгнали меня с работы за профнепригодность :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 08:15 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Лидер раскрашительства сегодня MS. На картинке: в Win10 в окне открыт терминал виртуалки W7, в нем MSVS 2015, поверх эксель 2010, поверх проводник виндовса 7. Убожество полное. Главная засада: крестики MSVS 2015 стилизованы под Win10 и я частенько промахиваюсь, вместо закрытия студии закрываю терминал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 08:36 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
А что, моя дебильная блеклая панель будоражит ? Мне кажется, что она очень мало отличается от серого убожества. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 09:26 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Чего-то не хватает: //h class CTextDlg : public CDialog { // Construction public: CTextDlg(CWnd* pParent = NULL); // standard constructor protected: HICON m_hIcon; CColorStatic m_Text; virtual BOOL OnInitDialog(); afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor); }; //cpp BEGIN_MESSAGE_MAP(CTextDlg, CDialog) ON_WM_PAINT() ON_WM_QUERYDRAGICON() ON_WM_CTLCOLOR() END_MESSAGE_MAP() HBRUSH CTextDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); // можно добавить: if ( nCtlColor == CTLCOLOR_STATIC ) if ( pWnd->GetDlgCtrlID() == IDC_TEXT ) { pDC->SetTextColor(0xFF); } return hbr; } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 17:58 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдЧего-то не хватает А может что-то лишнее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 17:59 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдЛизоблюдЧего-то не хватает А может что-то лишнее. Почему-то текста(статика) вообще не видно - ни цветного, ни бесцветного. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 18:56 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдПочему-то текста(статика) вообще не видно - ни цветного, ни бесцветного. Потому что нужно програмно задать текст, который он выводит. В окне диалога там пишет "Статический", но на самом деле это пустота. Например так: Код: plaintext 1. Тут другая проблема, приведенный тобой код по закраске текста не закрашивает кнопку, хотя статик закрашивает. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 19:13 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
kab18 Тут другая проблема, приведенный тобой код по закраске текста не закрашивает кнопку, хотя статик закрашивает. Кнопку закрасить нужен другой программный код. Для меня эта задача решена лет 10 взад. Мне нужно закрасить цвет текста статика. Статик почему-то вообще невидим становится после того как его определил как control. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 19:41 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Я имел ввиду текст в кнопке. Судя по этому код должен быть одинаковым. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 19:46 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Уря-я-я!!! Все получилось благодаря //DDX_Control(pDX, IDC_TEXT, m_Text); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 20:21 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Для закраски текста я так понял DDX не нужен, достаточно приведенного тобой кода: Код Код: 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. CColorStatic::CColorStatic() { m_TextColor=RGB(11,1,111); } Удалить protected: HICON m_hIcon; CColorStatic m_Text; Удалить // Generated message map functions //{{AFX_CTextDlg virtual BOOL OnInitDialog(); afx_msg void OnPaint(); afx_msg HCURSOR OnQueryDragIcon(); //}}AFX_MSG DECLARE_MESSAGE_MAP() }; void CTextDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CTextDlg) // NOTE: the ClassWizard will add DDX and DDV calls here DDX_Control(pDX, IDC_TEXT, m_Text); //}}AFX_DATA_MAP } Удалить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 20:25 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Теперь давай думать как закрасить текст в кнопке, а то че то не закрашивает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 20:26 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
kab18Теперь давай думать как закрасить текст в кнопке, а то че то не закрашивает. А мне не надо думать. У меня кнопка закрашена. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 20:54 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
kab18Для закраски текста я так понял DDX не нужен, достаточно приведенного тобой кода Пример я взял с http://www.codeproject.com/Articles/1035/Using-colors-in-CEdit-and-CStatic Здесь этот DDX появился. Хотя у меня изначально вызывало удивление, что статик становился control. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 20:58 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
Достаточно было убрать DDX и все у меня появилось. Вот что значит нельзя пользоваться чужими примерами. В них могут быть ошибки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 21:00 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
//h: class CMyDlg : public CDialog { ... afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor); ... }; //cpp: BEGIN_MESSAGE_MAP(CMyDlg, CDialog) ... ON_WM_CTLCOLOR() ... END_MESSAGE_MAP() HBRUSH CMyDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); // можно добавить: if ( nCtlColor == CTLCOLOR_STATIC ) if ( pWnd->GetDlgCtrlID() == IDC_MY_STATIC ) { pDC->SetTextColor(0xFF); } return hbr; } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 21:21 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
А через opengl можно работать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2016, 23:58 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
kab18Теперь давай думать как закрасить текст в кнопке, а то че то не закрашивает.Во-первых, надо использовать WM_CTLCOLORBTN, а во-вторых, оно всё равно не работает, потому что так задумано. Для кнопок и кнопкоподобных контролов (bs_pushlike) всегда используются системные цвета, wm_ctlcolorbtn "влияет" только на ownerdraw-кнопки. И интересно, как DDX мешал покраске статика... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2016, 06:35 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
VestaBestaА через opengl можно работать? Вопрос какой-то абстрактный. Что конкретно через opengl делать хочется? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2016, 06:37 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbkab18Теперь давай думать как закрасить текст в кнопке, а то че то не закрашивает.Во-первых, надо использовать WM_CTLCOLORBTN, а во-вторых, оно всё равно не работает, потому что так задумано. Для кнопок и кнопкоподобных контролов (bs_pushlike) всегда используются системные цвета, wm_ctlcolorbtn "влияет" только на ownerdraw-кнопки. И интересно, как DDX мешал покраске статика... DDX мешать не может, а DDX_Control (pDX, IDC_TEXT, m_Text); вполне себе мешал. Зачем статик делается управляющим, т.е. control ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2016, 07:36 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
VestaBestaА через opengl можно работать? Открытая графическая библиотека позволяет получать всевдо-3D. Я с ней давно работаю. Но в рассмотренных здесь мною случаях она совсем не нужна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2016, 07:38 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMbkab18Теперь давай думать как закрасить текст в кнопке, а то че то не закрашивает.Во-первых, надо использовать WM_CTLCOLORBTN, а во-вторых, оно всё равно не работает, потому что так задумано. Для кнопок и кнопкоподобных контролов (bs_pushlike) всегда используются системные цвета, wm_ctlcolorbtn "влияет" только на ownerdraw-кнопки. И интересно, как DDX мешал покраске статика... Для кнопок надо подключать colorbtn.h и colorbtn.cpp и используется: VERIFY(m_btnOK.Attach(IDC_BUTTON7, this, CYAN, BLUE, DKCYAN)); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2016, 07:42 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
ЛизоблюдЗачем статик делается управляющим, т.е. control ? Не, эта штука просто гоняет данные из класса в контрол. Т.е. DDX привязывает данные к элементам окон. Так бы тебе пришлось, в случае, если юзер что-то поменял на диалоге, самому из контрола доставать данные, потом их в класс запихивать. И наоборот, если ты чего-то в классе поменял, нужно это положить в контрол. DDX делает всё это за тебя. Немного криво и неудобно ( а я запилил свою версию DDX-а, без mfc, без UpdateData, с привязкой нескольких контролов к одному компоненту, с чтением/записью из/в реестр/инифайл ), но реально экономит время! Скорее всего DDX у тебя как раз берёт данные из класса (там пусто) и пишет в контрол, поэтому там пустая строчка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2016, 10:28 |
|
||
|
размер и цвет текста
|
|||
|---|---|---|---|
|
#18+
CEMb Скорее всего DDX у тебя как раз берёт данные из класса (там пусто) и пишет в контрол, поэтому там пустая строчка. Как только убрал DDX_Control(pDX, IDC_TEXT, m_Text); сразу все зафурыкало. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2016, 21:14 |
|
||
|
|

start [/forum/topic.php?all=1&fid=57&tid=2018611]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
84ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
124ms |
get tp. blocked users: |
1ms |
| others: | 12ms |
| total: | 265ms |

| 0 / 0 |
