СообЧа > База Знаний > Программирование > Visual Basic > Формы и элементы управления

Вопрос

Такая проблема: Как установить размер MsFlexGrid'а, равный количеству строк умноженное на высоту строки — чтобы высота (и длина) была как раз под количество строк и столбцов?

Ответ

Теоректически, конечно, возможно, что строки будут иметь разную высоту, как, впрочем и столбцы (что более вероятно), но если столбцов, как правило немного, и пересуммировать их несложно, то это не составит особого труда:

For i = 0 To MsFlexGrid.Cols — 1
     hHeight = hHeight + MsFlexGrid.RowHeight(i)
Next
MsFlexGrid.Height = hHeight

For i = 0 To MsFlexGrid.Rows — 1
     hWidth = hWidth + MsFlexGrid.ColWidth(i)
Next
MsFlexGrid.Width = hWidth
Второй цикл, как правило, можно заменить строкой

MsFlexGrid.Width = MsFlexGrid.ColWidth(0) * (MsFlexGrid.Cols + 1)

при условии, что количество строк больше нуля и строки имеют одинаковую высоту.

Viaceslavas Kaleda



Copyright © 2000-2004 Сообщество Чайников
Контактная информация