Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Войти
 
Страницы: 1
RSS
Компонент StringGrid
 
Помогите пожалуйста, компонент StringGrid в Делфи представляет собой таблицу...мне нужно, что бы она автоматически заполнялась числами, допустим от 1..20 ...
 
Все очень просто - у StringGrid есть свойство Cells. Например:
Код
for i := 1 to 20 do StringGrid1.Cells[i - 1, 0] := IntToStr(i);
Для задания размерности таблицы используются свойства RowCount и ColCount.

Вообще, крайне рекомендую использовать справку к Delphi, поиск по словам TStringGrid.
А если уж совем плохо, то вот что могу предложить.
 
Цитата
zagzag пишет:
Все очень просто - у StringGrid есть свойство Cells. Например:
Код
for i := 1 to 20 do StringGrid1.Cells[i - 1, 0] := IntToStr(i);
Для задания размерности таблицы используются свойства RowCount и ColCount.

Вообще, крайне рекомендую использовать справку к Delphi, поиск по словам TStringGrid.
А если уж совем плохо, то вот что могу предложить.
Спасибо, кнопки спасибо не нашёл, но + поставил)
А скажи ещё пожалуйста, как отследить какие ячейки выделены?
ЗЫ. У меня винда7 справка не открывается))) я нуп)
Изменено: IGOR CHEKUN - 18.04.2011 22:56:04
 
Цитата
IGOR CHEKUN пишет:
А скажи ещё пожалуйста, как отследить какие ячейки выделены?
Свойство StringGrid1.Selection, у него есть поля Left, Right, Top, Bottom. Как-то так, скажем:
Код
Form2.Caption := IntToStr(StringGrid1.Selection.Left) + ':' + IntToStr(StringGrid1.Selection.Right);
И если нет справки часто такие вопросы легко решает автодополнение кода. Пиши "StringGrid." и жми Ctrl+Пробел, далее поможет знание английского.
 
Цитата
zagzag
Спасибо..очень помогли мне..
 
Цитата
zagzag
Помогите ещё пожалуйста.
...............
i:= IntToStr(StringGrid1.Selection.Right);
j:= IntToStr(StringGrid1.Selection.Left);
memo1.Lines.Add('I-ýëåìåíò = '+i);
memo1.Lines.Add('J-ýëåìåíò = '+j);
...............
ну вот. а у меня несколько строк в таблице, а показывает числа только  из первой...как сделать, что бы из любой..?
 
Цитата
IGOR CHEKUN пишет:
а у меня несколько строк в таблице, а показывает числа только из первой...как сделать, что бы из любой..?
Цитата
zagzag пишет:
Свойство StringGrid1.Selection, у него есть поля Left, Right, Top, Bottom
А теперь переведем:
Left - лево
Right - право
Top - верх
Bottom - низ
Эти четыре числа и задают прямоугольную область выделения.
 
Чего-то я всёравно не понимаю. у меня пользователь в таблице должен выделить 2 ячейки (находятся рядом)  по вертикали \ по горизонтали...
..вот, мн нужно и узнать какие числа в этих ячейках)?
 
Цитата
IGOR CHEKUN пишет:
Чего-то я всёравно не понимаю. у меня пользователь в таблице должен выделить 2 ячейки (находятся рядом) по вертикали \ по горизонтали...
..вот, мн нужно и узнать какие числа в этих ячейках)?
Вот так, например:
Код
  with StringGrid1 do
  begin
    if ((Selection.Left = Selection.Right) and ((Selection.Top + 1) = Selection.Bottom)) or
       (Selection.Top = Selection.Bottom) and ((Selection.Left + 1) = Selection.Right) then
    begin
      Memo1.Lines.Add('Первое значение равно ' + Cells[Selection.Left, Selection.Top]);
      Memo1.Lines.Add('Второе значение равно ' + Cells[Selection.Right, Selection.Bottom]);  
    end
    else
    begin
      Memo1.Lines.Add('Выделена неправильная область');
    end;    
  end;
 
Всё, спасибо, уже во всём разобрался, это у меня курсовая такая)
 
И по какой же специальности вы обучаетесь? стесняюсь спросить...
И за какой курс, курсовая работа??
 
Цитата
phoenix пишет:
И по какой же специальности вы обучаетесь? стесняюсь спросить...
И за какой курс, курсовая работа??
Хахах)) да не стесняйтесь...)
Инженер-программист, 1 курс, курсовая "Игра математик"...
..ага?
 
Помогите пожалуйста решить задачу
Создайте приложение, которое в момент его запуска заполняет таблицу 5x5 случайными числами от 10 до 40. Таблица не должна иметь фиксированных полей, не должна редактироваться, а при щелчке на какой-либо ячейке должна выделяться вся строка. Причём сумма чисел в выделенной строке должна отображаться в компоненте Label.
А именно
Причём сумма чисел в выделенной строке должна отображаться в компоненте Label.
Эту часть
Изменено: nika0105 - 23.10.2011 17:36:12 (ошибка)
 
Именно выделенной строки
 
всем добрый вечер.Хочу предоставить вашему вниманию уникальный сайт http://specjob.com/  где вы легко и не принуждёно заработаете от 300 до 450р за 1 час.Желаю удачи.
Страницы: 1
Читают тему