Цвет Шрифта <:( ?

Предыдущая тема Следующая тема Перейти вниз

Цвет Шрифта <:( ?

Сообщение  timurar в Пт Авг 19, 2011 2:53 pm

Подскажите как раскрасить шрифт
Создал диалоговое окно по шаблону, немогу раскрасить статический текст.
Код:

/'
   Dialog Example, by fsw

   compile with:   fbc -s gui dialog.rc dialog.bas

'/

#Include Once "windows.bi"

#Include "123.bi"

Declare Function DlgProc(ByVal hWin As HWND, ByVal uMsg As UINT, ByVal wParam As WPARAM, ByVal lParam As LPARAM) As Integer

'''
''' Program start
'''

   ''
   '' Create the Dialog
   ''
   hInstance=GetModuleHandle(NULL)
   DialogBoxParam(hInstance, Cast(ZString Ptr,IDD_DLG1), NULL, @DlgProc, NULL)
   ''
   '' Program has ended
   ''

   ExitProcess(0)
   End

'''
''' Program end
'''
Function LoadFont(ByVal Name_ As String ,ByVal Size As Integer,ByVal corner As Integer=0,ByVal BOLD As Integer=0,ByVal Italic As Integer=0,ByVal Underline As Integer=0,ByVal StrikeOut As Integer=0) As HFONT Export
  Dim As Integer size_
  If BOLD=1 Then BOLD=700 Else BOLD=400
  size_ = -MulDiv(Size, GetDeviceCaps(CreateDC("DISPLAY",0,0,0), LOGPIXELSY), 72)
  Return CreateFont(size_,0,corner*10,0,Bold,Italic,Underline,StrikeOut,DEFAULT_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,DEFAULT_PITCH Or FF_DONTCARE,Name_)
End Function
Function DlgProc(ByVal hWin As HWND,ByVal uMsg As UINT,ByVal wParam As WPARAM,ByVal lParam As LPARAM) As Integer
   Dim As Long id, Event, x, y
   Dim hBtn As HWND
   Dim rect As RECT
          Dim hEdt As HWND

   Select Case uMsg
      Case WM_INITDIALOG
         '
         hEdt=GetDlgItem(hWin,IDC_STC1)
         SetTextColor(hEdt,RGB(255,0,0))
         SendDlgItemMessage(hWin,IDC_STC1,WM_SETFONT,LoadFont("Times",18,,1,1),0)
      Case WM_CLOSE
         EndDialog(hWin, 0)
         '
      Case WM_COMMAND
         id=LoWord(wParam)
         Event=HiWord(wParam)
         Select Case id
            Case IDC_BTN1
               EndDialog(hWin, 0)
               '
         End Select
      Case WM_SIZE
         GetClientRect(hWin,@rect)
         hBtn=GetDlgItem(hWin,IDC_BTN1)
         x=rect.right-100
         y=rect.bottom-35
         MoveWindow(hBtn,x,y,97,31,TRUE)
         '
      Case Else
         Return FALSE
         '
   End Select
   Return TRUE

End Function

или функцию SetTextColor(hEdt,RGB(255,0,0)) надо применять как то по другому?

timurar

Сообщения : 8
Дата регистрации : 2011-07-26

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: Цвет Шрифта <:( ?

Сообщение  trew в Пт Авг 19, 2011 5:23 pm

timurar !

Я по этому коду например не могу сказать, что именно нужно раскрасить. Буду считать, что тебе нужно раскрасить текст контрола Static. Функция Settextcolor может его покрасить, но в сообщении WM_CTLCOLORSTATIC.

trew

Сообщения : 331
Дата регистрации : 2010-10-14

Посмотреть профиль

Вернуться к началу Перейти вниз

Предыдущая тема Следующая тема Вернуться к началу


 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения