Воскресенье
09.02.2025
00:37
Форма входа
Поиск
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Статистика

    OPEN SOURCE PROJECT

    [ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
    • Страница 1 из 1
    • 1
    Colors
    andXreiДата: Среда, 17.06.2009, 13:59 | Сообщение # 1
    Майор
    Группа: Проверенные
    Сообщений: 95
    Репутация: 2
    Статус: Offline
    Помогите разобраться со следующим вопросом>>

    как изменить фон STATIC -a
    Вот кусок кода:

    Code


    include 'win32ax.inc'
    .data
    _class db 'MY_CLASS',0
    _title db '.........',0    
    hstat        dd ?  
    hdc          dd ?
    hwin         dd ?

    ...........................
    ............................

    invoke GetModuleHandle,0
    mov [wc.hInstance],eax
    mov    [hinstance], eax
    invoke LoadIcon,0,IDI_APPLICATION
    mov [wc.hIcon],eax
    invoke LoadCursor,0,IDC_ARROW
    mov [wc.hCursor],eax
    invoke RegisterClass,wc

    invoke CreateWindowEx,WS_EX_LAYERED,_class,_title,WS_VISIBLE+WS_ICONICPOPUP,500,400,300,150,0,0,[wc.hInstance],0
    mov [hwin],eax     

    ............................................
    ............................................
    .........

    .wmcreate:  

    invoke CreateWindowEx,0,"Edit",buff,WS_VISIBLE+WS_CHILD,150,60,120,25,[hwnd],1003,[wc.hInstance],0
    mov [hstat],eax    

    invoke GetDC,[hwin]
    mov [hdc],eax
    invoke SetBkColor,[hdc],[hstat],3255   

    ..................................
    ........
    .................................

    .finish:
    pop edi esi ebx
    ret
    endp
    .end start


    Поможете?? wink
     
    fasmДата: Четверг, 18.06.2009, 01:39 | Сообщение # 2
    Admin
    Группа: Заблокированные
    Сообщений: 122
    Репутация: 5
    Статус: Offline
    Таким образом фон не изменишь, можно использовать в ответ на сообщение WM_PAINT функцию TextOut + SetBkColor
     
    andXreiДата: Четверг, 18.06.2009, 08:57 | Сообщение # 3
    Майор
    Группа: Проверенные
    Сообщений: 95
    Репутация: 2
    Статус: Offline
    А поподробней!
     
    fasmДата: Четверг, 18.06.2009, 21:29 | Сообщение # 4
    Admin
    Группа: Заблокированные
    Сообщений: 122
    Репутация: 5
    Статус: Offline
    Вот исходник, написал тупо, но зато понятно:
    Прикрепления: Colortext.asm (6.7 Kb)
     
    andXreiДата: Воскресенье, 21.06.2009, 13:56 | Сообщение # 5
    Майор
    Группа: Проверенные
    Сообщений: 95
    Репутация: 2
    Статус: Offline
    А какое значение у прозрачного цвета??
    А то у тебя в исходнике написано
    Code
    mov     [bgcolor], eax     

    а какое значение в eax мне не понятно

    И еще один вопрос можно ли изменить шрифт у TextOut ??

     
    fasmДата: Четверг, 25.06.2009, 18:08 | Сообщение # 6
    Admin
    Группа: Заблокированные
    Сообщений: 122
    Репутация: 5
    Статус: Offline
    Обрати внимание, что структуру WNDCLASS я задал как:

    wc WNDCLASS 0,WindowProc,0,0,NULL,NULL,NULL,COLOR_BTNFACE+1,NULL,_class

    А на деле прозрачный фон я не использую, я беру системный цвет COLOR_BTNFACE и помещаю его в bgcolor

    invoke GetSysColor, COLOR_BTNFACE
    mov [bgcolor], eax

    т.е. задний фон TextOut и формы совпадают...

     
    fasmДата: Четверг, 25.06.2009, 18:18 | Сообщение # 7
    Admin
    Группа: Заблокированные
    Сообщений: 122
    Репутация: 5
    Статус: Offline
    Вот и исходник с шрифтами
    Прикрепления: 4807464.asm (7.5 Kb)
     
    • Страница 1 из 1
    • 1
    Поиск: