powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / StringGrid
10 сообщений из 10, страница 1 из 1
StringGrid
    #32307115
Фотография viv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как в этом компоненте задать код для удаления строк и перемене их местами? При этом это должно быть удобно для пользователя. Что посоветуете?
Строки уже сформированы.
...
Рейтинг: 0 / 0
StringGrid
    #32307164
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Drag&Drop ?
...
Рейтинг: 0 / 0
StringGrid
    #32307361
Фотография viv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я понимаю, а как это лутше реализовать?
...
Рейтинг: 0 / 0
StringGrid
    #32307622
Фотография viv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Люди помогите пожалуйста, очень нужно.
...
Рейтинг: 0 / 0
StringGrid
    #32307653
Артем1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А в чем проблема?

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

А перетаскивание по стандарту, как в примерах к Delphi.
Если есть EhLib - можете глянуть в его примере.
Там тоже просто и понятно.
одно свойство и 2 обработчика
...
Рейтинг: 0 / 0
StringGrid
    #32307715
Малиновский Владимир
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
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
StringGrid
    #32307729
Артем1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какая StringGrid модная штука .
не знал, не знал, каюсь. :)
...
Рейтинг: 0 / 0
StringGrid
    #32307759
Фотография viv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А будет ли это удобно для человека работуещего с программой, может есть другой путь.
...
Рейтинг: 0 / 0
StringGrid
    #32307797
Малиновский Владимир
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, ты еще хочешь, чтобы тебе дизайн разработали, не только начинку?
...
Рейтинг: 0 / 0
StringGrid
    #32307807
Фотография viv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет, я хочу чтоб человек понял что и к чему и смог быстро отредактировать списки.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / StringGrid
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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