Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2006.02.19;
Скачать: [xml.tar.bz2];

Вниз

Вопросы по ListView1   Найти похожие ветки 

 
Trubis   (2005-06-23 00:06) [0]

Как запретить изменение ширины столбцов?
Ну всё облазил :((
Если клик мышой вне списка (н-р в списке 5 пунктов, а клик на 7), то почему пропадает выделение предыдуще-выделенного пункта. Как оставить?


 
ECM ©   (2005-06-25 16:40) [1]

Как запретить изменение ширины столбцов?
На KOL? Легко!... :)
type
 TWndProc = function (hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;

var
 HdrDefWndProc: TWndProc = nil;

function HdrWndFunc(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
begin
 Case Msg of
   WM_SETCURSOR,WM_MOUSEMOVE: Result := 0;
 else
   Result := CallWindowProc(@HdrDefWndProc,hWnd,Msg,wParam,lParam);
 end;
end;

procedure TForm1.KOLForm1FormCreate(Sender: PObj);
var
 Header: THandle;
begin
 Header := ListView1.Perform(LVM_GETHEADER,0,0);
 HdrDefWndProc := Pointer(GetWindowLong(Header,GWL_WNDPROC));
 if Assigned(HdrDefWndProc) then
   SetWindowLong(Header,GWL_WNDPROC,Integer(@HdrWndFunc));
end;


Если клик мышой вне списка (н-р в списке 5 пунктов, а клик на 7), то почему пропадает выделение предыдуще-выделенного пункта. Как оставить?

На KOL? ... еще легче...:)

function TForm1.ListView1Message(var Msg: tagMSG;
 var Rslt: Integer): Boolean;
var
hti: TLVHitTestInfo;
begin
 Result := FALSE;
 if Msg.message = WM_LBUTTONDOWN then begin
   hti.pt.X := LoWord( Msg.lParam );
   hti.pt.Y := HiWord( Msg.lParam );
   Result := ListView1.Perform(LVM_HITTEST,0,Integer(@hti)) = -1;
 end;
end;


 
ECM ©   (2005-06-25 17:40) [2]

з.ы. увидел неточность:

function TForm1.ListView1Message(var Msg: tagMSG;
var Rslt: Integer): Boolean;
var
hti: TLVHitTestInfo;
begin
Result := FALSE;
if (Msg.message = WM_LBUTTONDOWN) or (Msg.message = WM_RBUTTONDOWN) then begin
  hti.pt.X := LoWord( Msg.lParam );
  hti.pt.Y := HiWord( Msg.lParam );
  Result := ListView1.Perform(LVM_HITTEST,0,Integer(@hti)) = -1;
end;
end;



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

Форум: "KOL";
Текущий архив: 2006.02.19;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.045 c
2-1138821376
ViktorZ
2006-02-01 22:16
2006.02.19
Новая проблема с бд!!!


3-1135359631
Toxic333
2005-12-23 20:40
2006.02.19
Проблемы с WideString в RxMemoryData


15-1138641510
palva
2006-01-30 20:18
2006.02.19
Какие разные эти процессоры и ОС !


9-1124440416
Dedylka
2005-08-19 12:33
2006.02.19
Шейдеры?


15-1138625475
syte_ser78
2006-01-30 15:51
2006.02.19
какого рекламодателя использывать?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский