Ir para conteúdo
Fórum Script Brasil
  • 0

Algumas Dúvidas...


deio

Pergunta

estou trabalhando com um banco de dados do tipo DBF, usando um componente chamado TDbf, versão 6.9, e minhas dúvidas são as seguintes :

1º) qual é a função que diz o tamanho do arquivo em bytes (Ex: 1871 Kb).

2º) como eu faço que quando alguém usar o programa, ao abrir um opendialog e clicar em cancelar, não de erro?

3º) como eu faço no dbgrid, ao rolar o rollover (a rodinha do mouse), o dbgrid o siga?

4º) coloquei uma função do dbf, chamada RecNo, que informa em qual dado você está (Ex: 1567/2000), só que ocorre isso daqui quando você seleciona um item com o mouse e rola o rollover, como arruma? :

errodbgridcu1.png

Editado por deio
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Opa

1º) Neste site tem vários exemplos.

2º) Depende o tipo do erro, mas antes de qualquer coisa cheque se o arquivo existe...

if OpenDialog.Execute then

if FileExists(OpenDialog.FileName) then

begin

{codigo}

...

3º) Não sei não trabalho com banco de dados...

4º) TDBF? Muito menos uauhsahuuh

Espero que outras pessoas possam te ajudar...

abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Opa

aew, consegui arrumar qse todos os erros, falta só a minha 1ª dúvida XD

1º) qual é a função que diz o tamanho do arquivo em bytes (Ex: 1871 Kb).

Exemplo baseado naquele site que passei

function Get_File_Size1(sFileToExamine: string; bInKBytes: Boolean): string;
{
 for some reason both methods of finding file size return
 a filesize that is slightly larger than what Windows File
 Explorer reports
}
var
  FileHandle: THandle;
  FileSize: LongWord;
  d1: Double;
  i1: Int64;
begin
  //a- Get file size
  FileHandle := CreateFile(PChar(sFileToExamine),
    GENERIC_READ,
    0, {exclusive}
    nil, {security}
    OPEN_EXISTING,
    FILE_ATTRIBUTE_NORMAL,
    0);
  FileSize   := GetFileSize(FileHandle, nil);
  Result     := IntToStr(FileSize);
  CloseHandle(FileHandle);
  //a- optionally report back in Kbytes
  if bInKbytes = True then
  begin
    if Length(Result) > 3 then
    begin
      Insert('.', Result, Length(Result) - 2);
      d1     := StrToFloat(Result);
      Result := IntToStr(round(d1)) + 'KB';
    end
    else
      Result := '1KB';
  end;
end;

Label1.Caption := Get_File_Size1('C:\MeuArquivo.exe', True);

abraço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...