Chamar uma funcao em um outro Form ou numa Unit

Delphi

17/08/2008

Boa Noite Amigos
Ja estou até meio timido em postar aqui minhas duvidas, mas tem coisas que nao me entram na cabeça (Esta por exemplo, nem quando programava em Clipper aprendi, mas arrumava sempre um jeitiinno), e por isso recorro a voces.

Tenho que montar um funçao na minha Unit de Funçôes assim:

case mes of
1: VarMes := ´ Janeiro/+IntToStr(ano)´;
2: VarMes := ´ Fevereiro/+IntToStr(ano)´;
3: VarMes := ´ Março/+IntToStr(Ano)´;
end;
etc.. etc.. (Sao os 12 meses do ano)

Eu preciso do resultado da variavel VarMes em varios Forms, pois eu estou repetindo isso em todos, mas sei que nao é o correto

obs: O que nao consigo entender é o CONST que coloca na funçao e o RESULT
Se alguem puder montar o Cabeçalho da Funçao pra mim... e tambem como chamá-la no form, desde já fico grato.

att.
Jotas


Jotas

Jotas

Curtidas 0

Melhor post

Wdrocha

Wdrocha

18/08/2008

Boa noite....

Vc pod fazer assim....

Vá em...

File ---> New ----> Other.....

Escolha Unit...



Lá nessa Unit...salva com o nome q vc quer...


aew com a Unit criada....vai um exemplo simples...

unit Unit2;

interface

//Aq vc declara o cabeçalho das suas procedures e functions
Procedure Teste ;

implementation

//Aq vc implementa a procedure ou function q vc declarou acima
Procedure Teste
  Begin
   
       //Seu código

  End

end.



Vc pod fazer com mts procedures e function....passando parâmetros inclusive...


Vamos supor q vc salvou esta Unit com o nome de UTeste...


Para usar a mesma...basta declarar abaixo da seção Implementation do seu Form....a clausula...

Implementation

Uses UTeste;



E no form q vc declarou que usará esta Unit...vc terá acesso a todas as procedures e functions da UTeste....

assim vc não precisará mais escrever o mesmo procedimento mais d uma vez...


qualquer coisa....posta aew...



espero ter ajudado....



Boa semana....



GOSTEI 2

Mais Respostas

Michell Oliveira

Michell Oliveira

17/08/2008

Obrigado pela explicação, foi mto claro.
GOSTEI 0
Emerson Nascimento

Emerson Nascimento

17/08/2008

qual informação você passará no parâmetro? uma data? o ano e o mês? porque, dependendo do que você têm em mãos, há várias formar de fazer a função.

- caso você tenha uma data:

// declara a constante com os meses do ano, em PT-BR
const aMeses: array[1..12] of string = ('Janeiro','Fevereiro','Março','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro');

// função que retorna o Mes/Ano a partir de uma data
function RetMesAno( dData: TDate ): string; overload;
var
dia, mes, ano: word;
begin
decodedate( dData, ano, mes, dia );
result := aMeses[mes]+'/'+inttostr(ano);
end;

// função que retorna o Mes/Ano a partir do valor de mês e ano
function RetMesAno( mes, ano: integer ): string; overload;
begin
result := aMeses[mes]+'/'+inttostr(ano);
end;

GOSTEI 1
Emerson Nascimento

Emerson Nascimento

17/08/2008

qual informação você passará no parâmetro? uma data? o ano e o mês? porque, dependendo do que você têm em mãos, há várias formar de fazer a função.

- caso você tenha uma data:

// declara a constante com os meses do ano, em PT-BR
const aMeses: array[1..12] of string = ('Janeiro','Fevereiro','Março','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro');

// função que retorna o Mes/Ano a partir de uma data
function RetMesAno( dData: TDate ): string; overload;
var
dia, mes, ano: word;
begin
decodedate( dData, ano, mes, dia );
  result := aMeses[mes]+'/'+inttostr(ano);
end;

// função que retorna o Mes/Ano a partir do valor de mês e ano
function RetMesAno( mes, ano: integer ): string; overload;
begin
  result := aMeses[mes]+'/'+inttostr(ano);
end;
GOSTEI 1
POSTAR