Criação de classe.
Qria criar uma unit q fosse ponto para msg dentro da aplicação. para passar flags de uma unit para outra ..... então a intenção seria d criar uma unit q instanciasse um objeto para toda a aplicação.
unit UMensagens;
interface
type
TMsgDoSistema=class(TObject)
constructor create;
destructor Destroy;
private
fMsgCriaOuImporta: String;
public
property MsgCriaOuImporta:String read fMsgCriaOuImporta write fMsgCriaOuImporta;
end;
var
MsgSis: TMsgDoSistema;
implementation
uses SysUtils;
{ TMsgDoSistema }
constructor TMsgDoSistema.Create;
begin
inherited Create;
end;
destructor TMsgDoSistema.Destroy;
begin
end;
end.
1º Gera um erro qdo chamo. O q ha de errado?
procedure TFCadastroDeFormMain.FormShow(Sender: TObject);
begin
MsgSis.Create;
end;
??
2º Se eu chamar do modulo principal posso ver a property dele em toda a aplicação?
unit UMensagens;
interface
type
TMsgDoSistema=class(TObject)
constructor create;
destructor Destroy;
private
fMsgCriaOuImporta: String;
public
property MsgCriaOuImporta:String read fMsgCriaOuImporta write fMsgCriaOuImporta;
end;
var
MsgSis: TMsgDoSistema;
implementation
uses SysUtils;
{ TMsgDoSistema }
constructor TMsgDoSistema.Create;
begin
inherited Create;
end;
destructor TMsgDoSistema.Destroy;
begin
end;
end.
1º Gera um erro qdo chamo. O q ha de errado?
procedure TFCadastroDeFormMain.FormShow(Sender: TObject);
begin
MsgSis.Create;
end;
??
2º Se eu chamar do modulo principal posso ver a property dele em toda a aplicação?
Host
Curtidas 0
Respostas
Aroldo Zanela
11/01/2007
Colega,
Creio que sua idéia não está de acordo com as boas práticas de programação. Entretanto, para corrigir o problema atual, faça:
Unit da classe:
No OnShow do formulário:
Creio que sua idéia não está de acordo com as boas práticas de programação. Entretanto, para corrigir o problema atual, faça:
Unit da classe:
interface
type
TMsgDoSistema=class(TObject)
private
fMsgCriaOuImporta: String;
public
constructor create;
destructor Destroy;
property MsgCriaOuImporta:String read fMsgCriaOuImporta write fMsgCriaOuImporta;
end;
implementation
uses SysUtils;
{ TMsgDoSistema }
constructor TMsgDoSistema.Create;
begin
inherited Create;
end;
destructor TMsgDoSistema.Destroy;
begin
end;
end.
No OnShow do formulário:
var Mensagem: TMsgDoSistema; begin Mensagem := TMsgDoSistema.create; Mensagem.MsgCriaOuImporta := ´MDA - Marrado de arame´; FreeAndNil(Mensagem); end;
GOSTEI 0
Host
11/01/2007
So podia ser o Zanella mesmo ... grande Zanella o q deste forum sem ti.
GOSTEI 0
Massuda
11/01/2007
Não entendi o que seria essa ´unit q fosse ponto para msg dentro da aplicação´... não seria mais simples usar variáveis globais?
unit BlaBlaBla; interface var StringQueRecebeAlgo: string; implementation end.
GOSTEI 0