Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / StringGrid / 10 сообщений из 10, страница 1 из 1
28.10.2003, 11:09
    #32307115
viv
viv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StringGrid
Как в этом компоненте задать код для удаления строк и перемене их местами? При этом это должно быть удобно для пользователя. Что посоветуете?
Строки уже сформированы.
...
Рейтинг: 0 / 0
28.10.2003, 11:32
    #32307164
JibSkeart
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StringGrid
Drag&Drop ?
...
Рейтинг: 0 / 0
28.10.2003, 13:24
    #32307361
viv
viv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StringGrid
я понимаю, а как это лутше реализовать?
...
Рейтинг: 0 / 0
28.10.2003, 15:16
    #32307622
viv
viv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StringGrid
Люди помогите пожалуйста, очень нужно.
...
Рейтинг: 0 / 0
28.10.2003, 15:32
    #32307653
Артем1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StringGrid
А в чем проблема?

На OnMouseMove ловите координаты мыши и таким образом всегда знаете,
над какой строкой находится курсор.

А перетаскивание по стандарту, как в примерах к Delphi.
Если есть EhLib - можете глянуть в его примере.
Там тоже просто и понятно.
одно свойство и 2 обработчика
...
Рейтинг: 0 / 0
28.10.2003, 15:55
    #32307715
Малиновский Владимир
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StringGrid
1. Делаем так:
StringGrid1.Options :=
StringGrid1.Options + [goRowMoving]; // и строки будут перетаскиваться за из заголовки (ну, слева там серые поля)
2. Наследуем TStringGrid в свой собственный класс, все оставляем без изменения, только публикуем метод
procedure DeleteRow(ARow: Longint); virtual;

И пишем процедуру на нажатие кнопки "удалить"

3. Если лень делать пункт 2., то делаем так:
- последовательно переносим значения всех строк от текущей и ниже к текущей
- последнюю строку удаляем:

procedure TForm1.BitBtn1Click(Sender: TObject);
var i, j : integer;
oldRow : integer;
begin
oldRow := StringGrid1.Row;
for i := 0 to StringGrid1.ColCount-1 do
for j:= oldRow to StringGrid1.RowCount do
StringGrid1.Cells[i,j] := StringGrid1.Cells[i,j+1];

StringGrid1.RowCount := StringGrid1.RowCount - 1;
end;
...
Рейтинг: 0 / 0
28.10.2003, 16:04
    #32307729
Артем1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StringGrid
Какая StringGrid модная штука .
не знал, не знал, каюсь. :)
...
Рейтинг: 0 / 0
28.10.2003, 16:17
    #32307759
viv
viv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StringGrid
А будет ли это удобно для человека работуещего с программой, может есть другой путь.
...
Рейтинг: 0 / 0
28.10.2003, 16:38
    #32307797
Малиновский Владимир
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StringGrid
Ну, ты еще хочешь, чтобы тебе дизайн разработали, не только начинку?
...
Рейтинг: 0 / 0
28.10.2003, 16:45
    #32307807
viv
viv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
StringGrid
Нет, я хочу чтоб человек понял что и к чему и смог быстро отредактировать списки.
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / StringGrid / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]