Tela de Incialização e TDBImage
Caras, meu projeto tem q carregar na sua inicialiação 30 formulários, ficando com uma lentidão demasiada.
Portanto, eu gostaria de saber como eu posso fazer para abrir por primeiro uma ´tela de incialização´ com um
ProgressBar avançando uma posição a cada formulario carregado.
Outra: Como posso fazer para limpar a imagem de um DBImage ao teclar ´Del´???
Portanto, eu gostaria de saber como eu posso fazer para abrir por primeiro uma ´tela de incialização´ com um
ProgressBar avançando uma posição a cada formulario carregado.
Outra: Como posso fazer para limpar a imagem de um DBImage ao teclar ´Del´???
Diorgenes175
Curtidas 0
Respostas
Fabio.hc
30/01/2004
Tente assim:
-Crie um form(FrmInicio) com um ProgressBar e vai incrementando a ProgressBar a cada form aberto.
No evento onKeyDown vc testa se foi pressionada del, se foi vc atribui vazio no campo imagem da query.
Ex:
-Crie um form(FrmInicio) com um ProgressBar e vai incrementando a ProgressBar a cada form aberto.
program SCC;
uses
Forms,
Windows,
Frm_Principal in ´Frm_Principal.pas´ ,
...
...
{$R *.RES}
var
Handle: THandle;
begin
Application.Initialize;
with TFrmInicio.Create(nil) do
try
ProgressBar1.Max := 100;
Show; // show a splash screen contain ProgressBar control
Update; // force display of FrmInicio
ProgressBar1.StepBy(10);
Application.CreateForm(TDMA, DMA);
ProgressBar1.StepBy(10);
Application.CreateForm(TFrmPrincipalSCC, FrmPrincipalSCC);
ProgressBar1.StepBy(20);
Application.CreateForm(TFrmLocalizar, FrmLocalizar);
ProgressBar1.StepBy(10);
Application.CreateForm(TFrmConfirma, FrmConfirma);
ProgressBar1.StepBy(20);
Application.CreateForm(TFrmBackup, FrmBackup);
ProgressBar1.StepBy(20);
Application.CreateForm(TFrmRel, FrmRel);
ProgressBar1.StepBy(10);
Application.CreateForm(TFrmConfirma, FrmConfirma);
finally
Free;
end;
Application.Run;
end.Outra: Como posso fazer para limpar a imagem de um DBImage ao teclar ´Del´???
No evento onKeyDown vc testa se foi pressionada del, se foi vc atribui vazio no campo imagem da query.
Ex:
procedure TFrmOrcamento.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if Key = VK_DELETE then begin qryParam.Edit; qryParamCLI_LOGOTIPO.Value:=´´; qryParam.ApplyUpdates; end; end;
GOSTEI 0
Diorgenes175
30/01/2004
Meu, para fazer a tela de incialização ocorreram alguns erros. Quando é criado o Formulario de abertura ele carrega, limpa a ProgressBar e fica na frente dos outros formularios e quando eu o fecho ele termina a aplicação. Como posso contornar isso. Eu queria que ocorresse da seguinte forma:
Quando é aberto o projeto carrega-se primeiro a tela de Apresentação. Após, carregada a ProgressBar esta tela some, entrando então no Formulario Principal com total liberdade na aplicação. Como eu posso fazer isso?
Valeu!!!
Quando é aberto o projeto carrega-se primeiro a tela de Apresentação. Após, carregada a ProgressBar esta tela some, entrando então no Formulario Principal com total liberdade na aplicação. Como eu posso fazer isso?
Valeu!!!
GOSTEI 0
Fabio.hc
30/01/2004
Vc tem que tirar este form com a progressbar do auto-create forms (Project - Options)
Aqui o form é criado:
e aqui ele é removido
Aqui o form é criado:
with TFrmInicio.Create(nil) do try ...
e aqui ele é removido
... finally Free; end;
GOSTEI 0
Diorgenes175
30/01/2004
Cara, agora sim consegui fazer uma tela de apresentação como eu queria, só fiz algumas incrementações naquele codigo q tu me enviou e deu certo. Mas o q eu nao consegui foi fazer o TDBImage ficar em branco quando pressionada a tecla ´Del´. Eu pressiono ´Del´ e a tabela entra em modo de edição mas o TDBImage continua com a imagem. Não estou usando TQuery neste Formulario e a Base de Dados é MS Access. Por que ocorre isso??
Valeu a ajuda!!!!!
Valeu a ajuda!!!!!
GOSTEI 0
Fabio.hc
30/01/2004
Da mesma forma que vc grava uma imagem vc apaga uma imagem basta colocar :=´´ .
GOSTEI 0