Вот вкратце то, что может делать StringGrid, но это почти все, что нам потребуется в этом приложении. Чтобы воспользоваться StringGrid для отображения таблицы закладной, прийдется столкнуться с несколькими особенностями, связанными с проектированием, и несколькими - связанными с выполнением. Но если вдуматься, то таких особенностей удивительно мало.

Первое, что вам надлежит сделать для установки конфигурации StringGrid, которую вы помещаете на форму, это зафиксировать строку и колонку для номеров строк, а также заголовки. Это выглядит не так наглядно в черно-белом изображении, как это могло бы быть в цвете, но на Рисунке 8.3 верхняя строка и крайняя левая колонка отличаются по цвету от клеток, содержащих числовые данные. Эти иначе закрашенные клетки и являются фиксированными строкой и колонкой. Если у вас в StrinGrid имеется больше данных, чем может отображаться одновременно, вы можете пролистать данные (посредством скролинга).., но зафиксированные строка и колонка не пролистываются и остаются на экране, чтобы предоставлять отмеченную информацию. Я установил оба свойства Fixed Cols и FixedRows равными 1, что дает одну фиксированную строку и одну фиксированную колонку. Характеристику FixedColor я установил в clBtnFace. Это делает фиксированные строку и колонку одного цвета со стандартным компонентом кнопки в Delphi. Вы имеете в своем распоряжении множество различных цветов - как ярких (типа clTeal и аналогичных ему), так и цветов, принимающих оттенки стандартных элементов Windows, вроде активных и неактивных линеек прокрутки (скроллинга), и т.п. Вот что дает clBtnFace. Вы можете изменить эти цвета с панели управления Windows (серый цвет является весьма подходящим, и Windows используют его по умолчанию).

Второе свойство, которое вы должны установить во время проектирования - Align, первое свойство в окне свойств. Обратите внимание, что на Рисунке 8.3 StringGrid имеет ту же ширину, что и форма, но не такую же высоту, и что она, как кажется, касается верхнего края клиентной области. Единственное значение свойства, которое определяет такое состояние: alTop. Значение alTop предписывает StringGrid занять всю ширину формы и помещает ее верхний край у верхнего края клиентной области. Нижний край вы можете смещать вверх и вниз, чтобы это соответствовало вашей форме. Далее я поместил кнопку Выйти (Quit) у нижнего края формы, и мне не хотелось, чтобы StringGrid перекрывала ее, поэтому alTop явился логичным выбором.

Однако, если вы использовали выпадающее меню вместо кнопки Выйти (что действительно является предпочтительным, но и более сложным, чем мне хотелось бы применительно к данному простому примеру), вы можете установить свойство Align в alClient, что укажет StringGrid - занять всю клиентную область, начиная сразу под рамкой меню. Другие доступные значения позволят вам выравнять StringGrid по нижнему краю формы, либо по левому или правому краю формы (заполняя ее сверху вниз.) Вы можете, также, установить характеристику Align в alNone, что просто оставляет StringGrid в тех размерах, которые вы определили, располагая форму. Однако, если пользователь изменит размеры или максимизирует форму, StringGrid не "последует за ней". Выравнивание того или иного вида является здоровой идеей, и приложения с электронными таблицами профессионального уровня должны иметь выпадающее меню и сетку, занимающую всю клиентную область.


⇐ Предыдущая страница| |Следующая страница ⇒

Программирование в среде Delphi



Новости за месяц

  • Декабрь
    2021
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31