Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.12;
Скачать: CL | DM;

Вниз

Не могу обработать нажатие по битмапине   Найти похожие ветки 

 
Василий Петрович ©   (2003-04-12 22:48) [0]

Я создаю битпам на форме:
bigbit:=CreateWindow("static",nil,SS_BITMAP or WS_CHILD or WS_VISIBLE,0,0,240,230,win,101,50,nil);
SendMessage(bigbit,STM_SETIMAGE,IMAGE_BITMAP,LoadBitmap(GetModuleHandle(nil),MAKEINTRESOURCE(101)));
Создается.
Потом пишу:
50: DestroyWindow(win);
И ничего!
Если таким же макаром создавить кнопку, то все получается.... а мне надо именно битмап!
Неужели нельзя так сделать?!


 
DVM ©   (2003-04-12 22:58) [1]


> Потом пишу:
> 50: DestroyWindow(win);
Ну удаление окна на котором битмап
> И ничего!
> Если таким же макаром создавить кнопку, то все получается....
> а мне надо именно битмап!
> Неужели нельзя так сделать?!

Что собственно надо сделать? я ничего не понял.


 
DVM ©   (2003-04-12 23:17) [2]

WM_L(R)BTNDOWN + получение координат мыши из LParam сообщения и сравнение их с координатами битмапа.


 
Songoku ©   (2003-04-13 00:26) [3]

Ты хочешь создать что-то типо SpeedButton1 с ипользованием FLAT??? еслт да то я попробую это сдлать кагда сделаю отпрвлю!!!


 
Songoku ©   (2003-04-13 12:46) [4]

Вот что у меня получилось!!!

var
dButton: Pointer;

function Default_Button(hWnd,Msg,wParam,lParam:Longint):Longint; stdcall;
var
R:TRect;
begin
Result:=CallWindowProc(dButton,hWnd,Msg,wParam,lParam); case Msg of WM_PAINT: begin
GetClientRect(hWnd,R);
FillRect(GetDC(hWnd), R, CreateSolidBrush(GetSysColor(COLOR_BTNFACE)));
DrawEdge(GetDC(hWnd), R,BDR_RAISEDINNER , BF_RECT);
case wParam of
1: DrawEdge(GetDC(hWnd), R,BDR_RAISEDINNER , BF_RECT);
2: DrawEdge(GetDC(hWnd), R,BDR_SUNKENINNER , BF_RECT);
end;
end;

WM_LBUTTONDOWN: SendMessage(hWnd,WM_PAINT,2,0);

WM_LBUTTONUP: SendMessage(hWnd,WM_PAINT,1,0);
end;
end;


.....
CreateWindow("Button", nil ,WS_CHILD or WS_VISIBLE,20,27,40,58,hwnd,91,0,nil);
dButton:=Pointer(GetWindowLong(GetDlgItem(hwnd,91),GWL_WNDPROC));
SetWindowLong(GetDlgItem(hwnd,91),GWL_WNDPROC,Longint(@Default_Button));
.....


 
Василий Петрович ©   (2003-04-13 21:15) [5]

Ты прав! Именно этого я добиваюсь!
Щас попробую что ты написал, заранее спасибы


 
х   (2003-04-14 15:57) [6]

2 Songoku © (13.04.03 12:46)

все хорошо, тока GetDC(hWnd) вызываем только 1 раз, а потом незабываем про ReleaseDC



Страницы: 1 вся ветка

Текущий архив: 2003.06.12;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.012 c
3-34742
Соловьев
2003-05-23 10:16
2003.06.12
Что с FireBird? кто сталкивался с траблой?


14-35046
k-sergey
2003-05-26 13:14
2003.06.12
Склеить Wav-ки


3-34740
Dmitriy E
2003-05-21 18:29
2003.06.12
---|Ветка была без названия|---


1-34840
nesterovsky
2003-05-29 13:50
2003.06.12
Почему не прорисовывается ListView на модальной форме?


3-34710
edicon
2003-05-23 00:28
2003.06.12
Alias