Fórum Componente nao aparece na paleta #342642
15/06/2007
0
Bom dia meus caros delphinos, estou com seguinte problema, criei um componente, digo de passagem que é o meu primeiro componente, compilou e instalaou sem problemas, mas quando verifico na paleta dos componentes onde ele foi registrado ele não aparece, quando clico em ´Properties´ de onde ele foi registrado ´Samples´ aparece, mas quando vou tentar coloca-lo no projeto não visualizo no mesmo. O que acontece? ....
Agradeço desde já
Agradeço desde já
Luciano Andrade
Curtir tópico
+ 0
Responder
Posts
15/06/2007
Nightshade
pode postar o codigo dele aki?
Responder
Gostei + 0
15/06/2007
Luciano Andrade
segue o código
unit uComboBoxADOData;
interface
uses
SysUtils, Classes, QControls, QStdCtrls, ADODB, Forms;
type
TComboBoxADOData = class(TComboBox)
private
{ Private declarations }
qryPsq : TADOQuery;
Title : String;
ConectionString : WideString;
ColumName : TStringList;
FieldsName : TStringList;
SQLText : TStringList;
sKeyColumn,
sFieldDetail,
sFieldCodigo : String;
vFieldDetail,
vFieldCodigo : Variant;
procedure SetConectionString (AConectionString : WideString);
procedure SetColumName (AColumName : TStringList);
procedure SetFieldsName (AFieldsName : TStringList);
procedure SetSQLText (ASQLText : TStringList);
protected
{ Protected declarations }
public
{ Public declarations }
PK : array[0..9] of Variant;
QueryOk : Boolean;
constructor create(AOWner : TComponent); override;
destructor destroy; override;
procedure KeyDown(var Key: Word; Shift: TShiftState); override;
published
{ Published declarations }
property _Title : String read Title write Title;
property _ConectionString : WideString read ConectionString write SetConectionString;
property _ColumName : TStringList read ColumName write SetColumName;
property _FieldsName : TStringList read FieldsName write SetFieldsName;
property _KeyColumn : String read sKeyColumn write sKeyColumn;
property _FieldDetail : String read sFieldDetail write sFieldDetail;
property _FieldCodigo : String read sFieldCodigo write sFieldCodigo;
property _FieldDetailValue : Variant read vFieldDetail write vFieldDetail;
property _FieldCodigoValue : Variant read vFieldCodigo write vFieldCodigo;
property _SQLText : TStringList read SQLText write SetSQLText;
end;
implementation
uses uFrmGrid1;
procedure Register;
begin
RegisterComponents(´Samples´, [TComboBoxADOData]);
end;
{ TComboBoxADOData }
constructor TComboBoxADOData.create(AOWner: TComponent);
begin
inherited create(AOWner);
ColumName := TStringList.Create;
FieldsName := TStringList.Create;
SQLText := TStringList.Create;
sKeyColumn := ´´;
Title := ´Pesquisa ´;
QueryOk := false;
end;
destructor TComboBoxADOData.destroy;
begin
inherited;
end;
procedure TComboBoxADOData.SetConectionString(
AConectionString: WideString);
begin
ConectionString := AConectionString;
end;
procedure TComboBoxADOData.SetColumName(AColumName: TStringList);
begin
ColumName.Text := AColumName.Text;
end;
procedure TComboBoxADOData.SetFieldsName(AFieldsName: TStringList);
begin
FieldsName.Text := AFieldsName.Text;
end;
procedure TComboBoxADOData.SetSQLText(ASQLText: TStringList);
begin
SQLText.Text := ASQLText.Text;
end;
procedure TComboBoxADOData.KeyDown(var Key: Word; Shift: TShiftState);
begin
//37 seta esquerda
//38 seta acima
//39 seta direita
//40 seta abaixo
if (key = 37) or
(key = 38) or
(key = 39) or
(key = 40) then
begin
if not Assigned(FrmGrid1) then
FrmGrid1 := TFrmGrid1.Create(Application);
FrmGrid1.Top := Self.Top - (Self.Height + 1);
FrmGrid1.Left := Self.Left;
FrmGrid1.Show;
end;
inherited;
end;
end.
Existe outras units que não posto, mas acredito que o problema possa estar ai, valeu
unit uComboBoxADOData;
interface
uses
SysUtils, Classes, QControls, QStdCtrls, ADODB, Forms;
type
TComboBoxADOData = class(TComboBox)
private
{ Private declarations }
qryPsq : TADOQuery;
Title : String;
ConectionString : WideString;
ColumName : TStringList;
FieldsName : TStringList;
SQLText : TStringList;
sKeyColumn,
sFieldDetail,
sFieldCodigo : String;
vFieldDetail,
vFieldCodigo : Variant;
procedure SetConectionString (AConectionString : WideString);
procedure SetColumName (AColumName : TStringList);
procedure SetFieldsName (AFieldsName : TStringList);
procedure SetSQLText (ASQLText : TStringList);
protected
{ Protected declarations }
public
{ Public declarations }
PK : array[0..9] of Variant;
QueryOk : Boolean;
constructor create(AOWner : TComponent); override;
destructor destroy; override;
procedure KeyDown(var Key: Word; Shift: TShiftState); override;
published
{ Published declarations }
property _Title : String read Title write Title;
property _ConectionString : WideString read ConectionString write SetConectionString;
property _ColumName : TStringList read ColumName write SetColumName;
property _FieldsName : TStringList read FieldsName write SetFieldsName;
property _KeyColumn : String read sKeyColumn write sKeyColumn;
property _FieldDetail : String read sFieldDetail write sFieldDetail;
property _FieldCodigo : String read sFieldCodigo write sFieldCodigo;
property _FieldDetailValue : Variant read vFieldDetail write vFieldDetail;
property _FieldCodigoValue : Variant read vFieldCodigo write vFieldCodigo;
property _SQLText : TStringList read SQLText write SetSQLText;
end;
implementation
uses uFrmGrid1;
procedure Register;
begin
RegisterComponents(´Samples´, [TComboBoxADOData]);
end;
{ TComboBoxADOData }
constructor TComboBoxADOData.create(AOWner: TComponent);
begin
inherited create(AOWner);
ColumName := TStringList.Create;
FieldsName := TStringList.Create;
SQLText := TStringList.Create;
sKeyColumn := ´´;
Title := ´Pesquisa ´;
QueryOk := false;
end;
destructor TComboBoxADOData.destroy;
begin
inherited;
end;
procedure TComboBoxADOData.SetConectionString(
AConectionString: WideString);
begin
ConectionString := AConectionString;
end;
procedure TComboBoxADOData.SetColumName(AColumName: TStringList);
begin
ColumName.Text := AColumName.Text;
end;
procedure TComboBoxADOData.SetFieldsName(AFieldsName: TStringList);
begin
FieldsName.Text := AFieldsName.Text;
end;
procedure TComboBoxADOData.SetSQLText(ASQLText: TStringList);
begin
SQLText.Text := ASQLText.Text;
end;
procedure TComboBoxADOData.KeyDown(var Key: Word; Shift: TShiftState);
begin
//37 seta esquerda
//38 seta acima
//39 seta direita
//40 seta abaixo
if (key = 37) or
(key = 38) or
(key = 39) or
(key = 40) then
begin
if not Assigned(FrmGrid1) then
FrmGrid1 := TFrmGrid1.Create(Application);
FrmGrid1.Top := Self.Top - (Self.Height + 1);
FrmGrid1.Left := Self.Left;
FrmGrid1.Show;
end;
inherited;
end;
end.
Existe outras units que não posto, mas acredito que o problema possa estar ai, valeu
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)