ListView - изменение subitem вручную

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
djalex777
Постоялец
Постоялец
 
Сообщения: 461
Зарегистрирован: 23.03.2006 (Чт) 16:02

ListView - изменение subitem вручную

Сообщение djalex777 » 11.09.2008 (Чт) 13:58

На форме есть listview, отображение report. К примеру, три колонки: a,b,c. С помощью мыши можно изменить значение только ячеек у столбца a. А можно ли сделать так, что и значения в b и c тоже можно было менять? Если можно, то как это делается?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: ListView - изменение subitem вручную

Сообщение Хакер » 11.09.2008 (Чт) 18:21

Нельзя.

Только вручную реализовывать такую возможность.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Re: ListView - изменение subitem вручную

Сообщение Alexanbar » 11.09.2008 (Чт) 20:36

djalex777 писал(а):На форме есть listview, отображение report. К примеру, три колонки: a,b,c. С помощью мыши можно изменить значение только ячеек у столбца a. А можно ли сделать так, что и значения в b и c тоже можно было менять? Если можно, то как это делается?



А сделать это можно, показав в нужное время и в нужном месте textbox соответствующего размера.

SLIM
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1840
Зарегистрирован: 04.04.2008 (Пт) 18:21
Откуда: Краснодар

Re: ListView - изменение subitem вручную

Сообщение SLIM » 14.09.2008 (Вс) 19:41

Alexanbar писал(а):А сделать это можно, показав в нужное время и в нужном месте textbox соответствующего размера.


Нука Нука поподробнее. что за "блуждающий TextBox"
Пишите жизнь на чистовик.....переписать не удастся.....

Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Re: ListView - изменение subitem вручную

Сообщение Alexanbar » 14.09.2008 (Вс) 20:12

SLIM писал(а):Нука Нука поподробнее. что за "блуждающий TextBox"


Примерно так:

1. Исходя из координаты указателя мыши (во время события ListView1_MouseUp) , определяем, по какой ячейке идёт клик.

2. Определяем размеры TextBox (те же, что и размеры ячейки) и его позицию (такую же, как и ячейки)

3. В событии ListView1_BeforeLabelEdit показываем TextBox с текстом ячейки и даем ему фокус.

4. по событию Textbox1_Change меняем текст в ячейке.
5. по событию Textbox1_KeyDown в случае, например, ввода Esc прячем Textbox1.
6. по событию Textbox1_LostFocus прячем Textbox1

SLIM
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1840
Зарегистрирован: 04.04.2008 (Пт) 18:21
Откуда: Краснодар

Re: ListView - изменение subitem вручную

Сообщение SLIM » 14.09.2008 (Вс) 21:01

Ну примерно так я и предполагал. Интересно а возможно усовершенствовать контролы?
Пишите жизнь на чистовик.....переписать не удастся.....

Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Re: ListView - изменение subitem вручную

Сообщение Alexanbar » 14.09.2008 (Вс) 22:17

SLIM писал(а):Ну примерно так я и предполагал. Интересно а возможно усовершенствовать контролы?


ПОчему бы и нет?

Просто редактирование всяческих ячеек на самом деле обычно сводится к тому, что на время редактирования создаётся т.н. editcontrol (там, где предусмотрено редактирование изначально, скажем, для самих Listitem-ов). Это тот же Textbox. Просто он сидит внутри.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 22

    TopList