FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
TCxGrid, OnGetGridView
Hola, que tal:
Estoy trabajando con un componente que se llama cxGrid, en el cual tengo dos niveles cada nivel con un dbTable, y un nivel dentro del otro, en pocas palabras es un maestro detalle les paso el siguiente codigo: Este codigo lo bajé de esta página: https://www.devexpress.com/Support/C...3-52dd97577823 el archivo se llama: dxKB_388.zip Código:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxEdit, cxGridCustomTableView, cxGridTableView, cxClasses, cxControls, cxGridCustomView, cxGridLevel, cxGrid, cxDataStorage; const CM_GETGRIDVIEW = WM_USER + 1; type TForm1 = class(TForm) cxGrid1Level1: TcxGridLevel; cxGrid1: TcxGrid; cxGrid1Level2: TcxGridLevel; cxGrid1TableView1: TcxGridTableView; cxGrid1TableView1Column1: TcxGridColumn; cxGrid1TableView1Column2: TcxGridColumn; cxGrid1TableView1Column3: TcxGridColumn; cxGrid1TableView2: TcxGridTableView; cxGrid1TableView2Column1: TcxGridColumn; cxGrid1TableView2Column2: TcxGridColumn; procedure FormCreate(Sender: TObject); procedure cxGrid1Level2GetGridView(Sender: TcxGridLevel; AMasterRecord: TcxCustomGridRecord; var AGridView: TcxCustomGridView); private procedure CmGetGridView(var Msg: TMessage); message CM_GETGRIDVIEW; { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); var I: Integer; begin with cxGrid1TableView1 do begin for I := 0 to DataController.ItemCount - 1 do Items[i].DataBinding.ValueTypeClass := TcxStringValueType; DataController.RecordCount := 2; DataController.Values[0, 0] := 'Value 0'; DataController.Values[0, 1] := 'Value 0 Column 1'; DataController.Values[0, 2] := 'Value 0 Column 2'; DataController.Values[1, 0] := 'Value 1'; DataController.Values[1, 1] := 'Value 1 Column 1'; DataController.Values[1, 2] := 'Value 1 Column 2'; end; with cxGrid1TableView2 do for I := 0 to DataController.ItemCount - 1 do Items[i].DataBinding.ValueTypeClass := TcxStringValueType; end; procedure TForm1.cxGrid1Level2GetGridView(Sender: TcxGridLevel; AMasterRecord: TcxCustomGridRecord; var AGridView: TcxCustomGridView); begin PostMessage(handle, CM_GETGRIDVIEW, Integer(AMasterREcord), Integer(AGridView));end; procedure TForm1.CmGetGridView(var Msg: TMessage); var I, J: Integer; AMasterRecord: TcxCustomGridRecord; AGridView: TcxGridTableView; AClone: TcxCustomGridView; begin if not ((TObject(Msg.WParam) is TcxCustomGridRecord) and (TObject(Msg.LParam) is TcxGridTableView)) thenExit; AMasterRecord := TcxCustomGridRecord(Msg.WParam); AGridView := TcxGridTableView(Msg.LParam); AClone := AGridView.Clones[AGridView.CloneCount - 1]; AClone.BeginUpdate; try with AClone.DataController do begin RecordCount := (AMasterRecord.Index + 1) * 5; for I := 0 to RecordCount - 1 do for J := 0 to AGridView.ColumnCount - 1 do if J = 0 then Values[I, J] := 'Value ' + IntToStr(AMasterRecord.Index) else Values[I, J] := Format('Value %d Record %d Column %d',end finally AClone.EndUpdate; end; end; end.AMasterRecord.Index, I, J]) Si abren este codigo en delphi y establecen las siguientes propiedades del grid: Align: alNone Width: 300 y ejecutan el codigo, al abrir uno de los dos gridview maestro, se darán cuenta que si usan la barra de desplazamiento horizontal perteneciente al cxgrid principal y no al gridview detalle o al gridview maestro solo se moverá o desplazará hacia los lados el gridview maestro pero no el gridview detalle. ¿ Cómo puedo hacer para que se desplacen los dos al mismo tiempo el maestro y el detalle ? Si alguien tiene alguna sugerencia agradezco su ayuda, o si alguien sabe algún mejor modo de hacerlo.
__________________
La conquista mas grande de un hombre es la conquista de el mismo.
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Componente TcxGrid de DevExpress | analiafer1979 | Varios | 1 | 21-09-2006 21:15:06 |
Componente TcxGrid en español.... | Sinaloense | OOP | 4 | 26-10-2004 18:10:53 |
Escribir en filas/columnas de un TcxGrid de DevExpress | verm83 | Varios | 0 | 03-05-2004 13:15:07 |
|