Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.01.14;
Скачать: CL | DM;

Вниз

Список фреймов / панелей   Найти похожие ветки 

 
UserControl   (2006-11-24 06:01) [0]

Есть ли решения? Нужен быстрый список / грид контролов (фреймов, к примеру, или панелей, с различным интерактивным контентом). Визуализация максимум 150-200 контролов в списке.

Пробовал делать в виде TScrollBox + TPanel (с кучей лейблов / пиктограмм на них + Align = alTop). Получается довольно тормознуто, так как создавать приходится кучу контролов (которые в добавок с БД связаны) в run-time.

Идеальный вариант был бы именно список фреймов...

На торри ничего интересного не обнаружил.

Подвести функционал того же VirtualTreeView под задачу - не удобно. Писать с нуля по времени практически нереально.

Видел отличное решение в VS2005 (Syncfusion components, вроде бы), там ячейки в гриде были UserControls + DataBinding и прочие фишки - все было мега-удобно. Но решать задачу надо в дельфях, портирование кода невозможно из-за подвязки на дотнете.

Прошу вас, помогите!


 
Elen ©   (2006-11-24 08:49) [1]


> UserControl

Могу предложить следующее : Создай Frame накидай на него контролы, а потом на форме размести грид и пропиши вот это :


procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
 Rect: TRect; State: TGridDrawState);

begin
if   StringGrid1.Objects [acol,arow]=nil then begin
  StringGrid1.Objects [acol,arow]:=Tframe2.Create(stringgrid1);
  TFrame2(StringGrid1.Objects [acol,arow]).Name:="frm"+inttostr(acol)+inttostr(arow);
  TFrame2(StringGrid1.Objects [acol,arow]).Parent :=StringGrid1;
  TFrame2(StringGrid1.Objects [acol,arow]).Top:=rect.Top;
  TFrame2(StringGrid1.Objects [acol,arow]).Left:=rect.Left;
  StringGrid1.ColWidths[acol] :=TFrame2(StringGrid1.Objects [acol,arow]).Width+10;
  StringGrid1.RowHeights[arow]:=TFrame2(StringGrid1.Objects [acol,arow]).Height+10;

  TFrame2(StringGrid1.Objects [acol,arow]).Visible:=true;
end;
end;


 
UserControl   (2006-11-24 18:26) [2]

Elen ©   (24.11.06 08:49) [1]
Спасибо!


 
Чапаев ©   (2006-11-25 09:51) [3]

Знакомый похожим образом делал, у него были какие-то странные трудноотлавливаемые глюки при обработке событий контролов, у которых Parent=StringGrid.



Страницы: 1 вся ветка

Текущий архив: 2007.01.14;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.039 c
15-1167048398
Handle
2006-12-25 15:06
2007.01.14
Идея пришла ко мне


15-1166899037
ferr
2006-12-23 21:37
2007.01.14
"Убийственный MessageBox от Мелкомягких"


15-1167074471
RusS
2006-12-25 22:21
2007.01.14
алгоритм


4-1156808336
Servelat
2006-08-29 03:38
2007.01.14
как зная HBITMAP получить ширину/высоту картинки


3-1161765448
Flash_80
2006-10-25 12:37
2007.01.14
Из Query в Excel?