Главная страница
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.028 c
3-1161868879
logslava
2006-10-26 17:21
2007.01.14
Каким образом можно получить список баз данных сервера


2-1165993024
VOPROS
2006-12-13 09:57
2007.01.14
Ошибка сервера. Excel.


15-1166817002
Zeqfreed
2006-12-22 22:50
2007.01.14
Вопрос по сайту


15-1166474454
Cyrax
2006-12-18 23:40
2007.01.14
Можно ли (теоретически и практически) заюзать Xerces ?


15-1167088424
pasha_golub
2006-12-26 02:13
2007.01.14
Можно ли запустить под виртуальной машиной Mac ?