Здравствуйте. Попробую описать ситуацию: На форме есть StringGrid и есть Кнопка. Кнопка должна становиться активной только после того, как стрингГрид будет полностью заполнен числами. Он заполняется вручную. Вопрос такой: Где сделать проверку заполненности СтрингГрида? (как проверить полностью ли заполнен СтрингГрид понятно, а вот где эту проверочку написать не знаю...) Или может возникает какое-то событие после заполнения ячеек СтрингГрида, если да, то какое? Если можете, то ответьте, спасибо.
volvo
13.05.2009 22:34
Повесь вот такой обработчик на OnSetEditText своего грида:
// Это - доп. функция function CheckGrid(grid: TStringGrid): boolean; var iCol, iRow: integer; begin result := true; for iCol := grid.FixedCols + 1 to grid.ColCount do for iRow := grid.FixedRows + 1 to grid.RowCount do begin result := result and (grid.Cells[Pred(iCol), Pred(iRow)] <> ''); end; end;
procedure TForm1.StringGrid1SetEditText(Sender: TObject; ACol, ARow: Integer; const Value: string); begin Button1.Enabled := CheckGrid(Sender as TStringGrid); // Button1 - та самая кнопка end;
Sensitive
14.05.2009 1:06
Большое спасибо!
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.