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

Вниз

Как в TListView(vsReport) можно редактировать второй столбец?   Найти похожие ветки 

 
madm ©   (2003-06-19 15:50) [0]

Здравствуйте.
Столкнулся с такой проблемой:
есть ListView, в нем два столбца, ReadOnly = false,
При щелчке на первом столбце его можно редактировать, а второй даже не выделяется :( Понимаю что второй столбец это уже не TListItem, но может как то можно сделать чтобы он также редактировался?


 
Семен Сорокин ©   (2003-06-19 15:57) [1]

Отлавливай клик, и вставляй в рект SubItem"а TEdit - редактируй скока хошь, на OnExit - скрывай Edit и меняй текст SubItem.


 
madm ©   (2003-06-19 16:00) [2]

А нельзяли примерчик? На делфи или билдере...


 
madm ©   (2003-06-19 16:17) [3]

"вставляй в рект SubItem"а TEdit"
как?
подскажи, плз... никогда так не делал...


 
Семен Сорокин ©   (2003-06-19 16:24) [4]

procedure TForm1.ListView1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
_i : integer;
_rect: TRect;
_item: TListItem;
_left: integer;
begin
_item := ListView1.GetItemAt(5, Y);
_rect := _item.DisplayRect(drLabel);
if Assigned(_item) then
with ListView1 do begin
_left := Columns[0].Width;
for _i := 1 to Columns.Count - 1 do
if (X > _left) and (X <= _left + Columns[_i].Width) then begin
_rect.Left := _left;
_rect.Right:= _left + Columns[_i].Width;
Edit1.Tag := _item.Index*100 + _i-1;
Edit1.Text := _item.SubItems[_i-1];
Edit1.SetBounds(_rect.Left + Left, _rect.Top + Top, _rect.Right - _rect.Left, _rect.Bottom - _rect.Top);
Edit1.Visible := true;
Edit1.SetFocus;
Exit
end
else
inc(_left, ListView1.Columns[_i].Width)
end
end;

procedure TForm1.Edit1Exit(Sender: TObject);
begin
ListView1.Items[Edit1.Tag div 100].SubItems[Edit1.Tag mod 100] := Edit1.Text;
Edit1.Visible := false;
end;


 
madm ©   (2003-06-19 16:30) [5]

Просто ОГРОМНЕЙШЕЕ СПАСИБО!!! :)



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
3-97501
Igor Mish
2003-06-05 10:14
2003.06.30
Шрифты в ShowMessage


1-97656
Gerda
2003-06-19 17:14
2003.06.30
Глюк со мной или с математикой


1-97654
Oxy
2003-06-19 11:17
2003.06.30
Проблемы с компонентом в компоненте


3-97491
vick_pvm
2003-06-05 09:39
2003.06.30
Как изменить настройки BDE(SharedMemSize)и применить в программе?


1-97743
MakNik
2003-06-18 18:29
2003.06.30
Вложенные папки