|
|
|
Смена фона окна с МФС
|
|||
|---|---|---|---|
|
#18+
Полинтернета перерыл и ничего доброго - кроме как переписать OnEraseBkgnd чот не нашел. Но этот метод не очень понравился - перехватывается событие и пересоздается стандартный бакграунд. а хочется чтоб этот бакграунд сразу же был такой какой надо. Опыты по регистрации своего класса окна командой AfxRegisterWndClass(CS_DBLCLKS /* | CS_VREDRAW | CS_HREDRAW */, ::LoadCursor(NULL, IDC_ARROW), (HBRUSH) (COLOR_BTNFACE + 1), ::LoadIcon(NULL, IDI_APPLICATION)); и последующей передачей полученного в PreCreateWindow тоже к особым усмпехам не привела: если использовать этот класс при создании CChildFrame или наследника от CView результата вообще никакого. При использовании их в обоих классах бакграун пропадает напрочь.... Как быть, чо делать, если хочется такого странного? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2007, 19:27 |
|
||
|
Смена фона окна с МФС
|
|||
|---|---|---|---|
|
#18+
_любитель_винды пишет: > Но этот метод не очень понравился - перехватывается событие и > пересоздается стандартный бакграунд. а хочется чтоб этот бакграунд сразу > же был такой какой надо. Опыты по регистрации своего класса окна командой Не существует никакого стандартного бэкграунда. Есть только кисть в классе окна, которой , если ты это не делаешь сам, закрашивается клиентская область окна. Но там может быть только кисть, если тебе над что-то более сложное, надо рисовать самому. > и последующей передачей полученного в PreCreateWindow тоже к особым > усмпехам не привела: если использовать этот класс при создании > CChildFrame или наследника от CView результата вообще никакого. Вообще странные какие-то слова, у фрейма и вьюхи вообще-то разные бэкграунды (при этом бэкграунд фрейма почти никогда не виден). Не, мысть правильная - задать в классе окна кисть. Но не все можно нарисовать с помощью кисти, поэтому если тебе нужно что-то сложнее - рисуй сам. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2007, 13:46 |
|
||
|
Смена фона окна с МФС
|
|||
|---|---|---|---|
|
#18+
MasterZiv _любитель_винды пишет: > Но этот метод не очень понравился - перехватывается событие и > пересоздается стандартный бакграунд. а хочется чтоб этот бакграунд сразу > же был такой какой надо. Опыты по регистрации своего класса окна командой Не существует никакого стандартного бэкграунда. Есть только кисть в классе окна, которой , если ты это не делаешь сам, закрашивается клиентская область окна. Но там может быть только кисть, если тебе над что-то более сложное, надо рисовать самому. > и последующей передачей полученного в PreCreateWindow тоже к особым > усмпехам не привела: если использовать этот класс при создании > CChildFrame или наследника от CView результата вообще никакого. Вообще странные какие-то слова, у фрейма и вьюхи вообще-то разные бэкграунды (при этом бэкграунд фрейма почти никогда не виден). Не, мысть правильная - задать в классе окна кисть. Но не все можно нарисовать с помощью кисти, поэтому если тебе нужно что-то сложнее - рисуй сам. Posted via ActualForum NNTP Server 1.3 вот вот. Кисть. У класса. Как поменять кисть у класса? с COLOR_WINDOW на COLOR_BTNFACE. Верней так - Как зарегестрировать и потом использовать свой класс так, что б его понимал MFC ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2007, 16:15 |
|
||
|
Смена фона окна с МФС
|
|||
|---|---|---|---|
|
#18+
MElin пишет: > Верней так - Как зарегестрировать и потом использовать свой класс так, > что б его понимал MFC Вообще MFC понимает любой зарегистрированный класс окна. Но есть AfxRegisterWindowClass, если нужно. Использовать - задать в PreCreateWindow. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2007, 12:25 |
|
||
|
Смена фона окна с МФС
|
|||
|---|---|---|---|
|
#18+
MElin....У класса. Как поменять кисть у класса?... у класса НЕТ никаких кистей... Есть у объектов вывода..например графика, печать и иже... Контекс вывода должен обладать такй возможностью - задать кисть, фонт, цвет и т.п.. с уважением (круглый) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2007, 17:05 |
|
||
|
Смена фона окна с МФС
|
|||
|---|---|---|---|
|
#18+
kolobok0 пишет: > у класса НЕТ никаких кистей... MSDN typedef struct { UINT style; WNDPROC lpfnWndProc; int cbClsExtra; int cbWndExtra; HINSTANCE hInstance; HICON hIcon; HCURSOR hCursor; HBRUSH hbrBackground; LPCTSTR lpszMenuName; LPCTSTR lpszClassName; } WNDCLASS, *PWNDCLASS; hbrBackground Handle to the class background brush. This member can be a handle to the physical brush to be used for painting the background, or it can be a color value. A color value must be one of the following standard system colors (the value 1 must be added to the chosen color). If a color value is given, you must convert it to one of the following .... Все еще нету ? Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2007, 19:45 |
|
||
|
Смена фона окна с МФС
|
|||
|---|---|---|---|
|
#18+
MasterZiv MElin пишет: > Верней так - Как зарегестрировать и потом использовать свой класс так, > что б его понимал MFC Вообще MFC понимает любой зарегистрированный класс окна. Но есть AfxRegisterWindowClass, если нужно. Использовать - задать в PreCreateWindow. Posted via ActualForum NNTP Server 1.3 В первом посте именно эта ситуация и обсуждалась - регестрировался класс, и использовался в PreCreateWubdiw. Результат получился достаточно странный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2007, 10:42 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=34288860&tid=2029558]: |
0ms |
get settings: |
11ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
225ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 245ms |
| total: | 569ms |

| 0 / 0 |
