Ir para conteúdo
Fórum Script Brasil

s3c

Membros
  • Total de itens

    817
  • Registro em

  • Última visita

Tudo que s3c postou

  1. s3c

    Api Para Mover Arquivo

    Tente modificar para:
  2. Bom, retire o Query1.Open inserido anteriormente. Limpe todos os break-points(F5). Vá na linha do Query1.Open após o For. Digite F5. Digite F9. Quando parar no Query1.Open, digite F8 e veja se dá erro ou passa para a linha seguinte.
  3. Só p/ teste. Após a linha Query1.SQL.Text := 'Select * From dbCadAt.db '; Coloque: Query1.Open; Digite F5 nesta útilma linha. Digite F9. Quando ele parar em Query1.Open, digite F8 e veja se ele vai p/ próxima linha sem dar erro. Depois retire a linha Query1.Open
  4. Passe para a função na dll o ponteiro de Varx. Por exemplo, se Varx for string, passe PChar(Varx), se for Integer, @Varx. No momento que for utilizada na dll, você exibe o conteúdo do endereço de Varx. Ela estará sempre com o valor daquele instante.
  5. Break-point não é uma instrução, tire-a de lá.
  6. s3c

    Handle

    Handle é um DWord ou Cardinal ou um inteiro positivo de 32 bits que é utilizado pelo Windows para identificar algum objeto como Canvas, Janela, Socket, Mutex etc...
  7. Break-point é um ponto de parada quando você debuga o programa. Vá até a linha do For após o ShowMessage. Tecle F5 nessa linha. Tecle F9, o programa começará a executar. Após o ShowMessage, ele pára na linha do For. Continue executando passo a passo teclando F8.
  8. Nunca utilizei, mas acho que funciona. Ative a propriedade Active e coloque um ícone na propriedade Icon. Deixe Animated=false. Animated serve para modificar os ícone de acordo com a propriedade Icons no intervalo Interval.
  9. FindWindow não deve estar retornando o Handle da janela. Seu segundo parâmetro não o nome do programa e sim o caption da janela. Tente o seguinte: var H:THandle; begin H := FindWindow(nil,'Caption da Janela'); if H > 0 then SendMessage(H,WM_CLOSE,0,0); end;
  10. Bom, não sei ao certo aonde você quer mandar esse valor do seu .exe para a dll. Se é dentro de uma função que já está executando, ou se é para atualizar uma variável global na dll. Para atualizar uma variável global, você pode chamar uma outra função na dll. Para dentro de uma função que está em execução, você pode passar pelo SendMessage; daí você pode criar um janela 'fantasma' só para ter um THandle dessa janela para poder receber o valor pelo SendMessage.
  11. Tente o seguinte: Rode o programa pelo F9, coloque um break-point após o ShowMessage(sWhe). Faça o For pelo F8, ou seja, um a um. Veja se dá algum erro lá. Se passar, execute o Query1.Open pelo F8 e veja se dá erro.
  12. Como assim? você quer em um certo momento mandar um valor da aplicação para uma dll?
  13. Caro colega, conforme a imagem postada, sua Lista2 está vazia e com o código iniciando em: Query1.SQL.Text := 'Select * From dbCadAt.db Where '; você não terá nenhum parâmetro na cláusula Where e certamente quando for executando Query1.Open dará um erro.
  14. Query1.Clear está errado mesmo. Não sei como esta linha foi parar lá.
  15. Pois é, pensei que só fosse aquilo e mais uma coisinha. Agora vocês continuam mais um pouco e sintam-se a vontade para criticar e modificar aquilo que fiz; afinal estamos num fórum de discussão. Vou ficar observando.
  16. Os Forms escravos ou paralelos sem ser o principal, ficam minimizados acima da barra de tarefas. Pode ser que exista algum jeito de colocá-los lá, mas eu não conheço. O método que uso é utilizar apenas um Form na aplicação(.exe) e os demais são chamados a partir de dlls que podem ser modais ou não. Com isto a minimização dos forms fica sempre na barra de tarefas, o executável fica menor e as dlls são chamadas e liberadas na medida do necessário.
  17. s3c

    Gifanimada

    Não sei quanto ao Delphi 7, mas no Delphi 6 o TrxGifAnimator não é perfeito; tem alguns gifs que ele não anima, mas achei melhor que o TGifImage. Quanto ao tutorial de componentes em português, eu não conheço e mesmo seu help em inglês é bem fraco. Eu fui utilizando-os no método de tentativa e erro.
  18. Eu só peguei um bonde andando que partiu do Corposemalma. Só esclarecí um ParamByName('codigo') de uma sentença sql.
  19. Olá Corposemalma, sua ajuda é sempre bem-vinda. Fica contigo agora, beleza!!!
  20. Monte um Where dinâmico: var i:Integer; sWhe:String; begin // aqui você só monta o Select dos campos que precisar Query1.Close; Query1.SQL.Text := 'Select * From Tabela '; // aqui você monta os parâmetros for i := 0 to Lista2.Items.Count-1 do if i = 0 then sWhe := 'Where CodPart = :P' + IntToStr(i) else sWhe := sWhe + ' or CodPart = :P' + IntToStr(i); // depois você adiciona na sua SQL que já contem o Select Query1.SQL.Add(sWhe); // aqui você coloca os valores dos parâmetros for i := 0 to Lista2.Items.Count-1 do Query1.ParamByName('P'+IntToStr(i)).asString := Lista2.Items[i]; // depois você executa Query1.Open; end;
  21. s3c

    .

    Acho que vai ser um sistema útil para sua escola. Qual seria sua dúvida?
  22. você tem uma Lista com todos os códigos, daí você seleciona alguns e joga na Lista2 e num certo momento, quer imprimir somente os da Lista2 certo? Se for isso, você tem que fazer um Select com a cláusula Where dos códigos existentes na Lista2 para depois poder imprimir.
  23. Se você amarrou o dataset ao relatório e quer que apareça somente os selecionados, você deve colocá-los na cláusula Where do Select de seu Dataset. Utilize esse mesmo For de Lista2.Items.Count p/ criar a cláusula Where dinamicamente no seu Dataset amarrado ao relatório.
  24. Bom, na propriedade Text você tem 5 códigos e não pode colocá-los como um valor no parâmetro codigo. Tente assim: var i,Total:Integer; begin Total := 0; Query1.Close; Query1.SQL.Text := 'Select Quantidade From dbCadAt.db Where CodPart = :cod'; for i := 0 to fmGerarRelAt.Lista2.Items.Count-1 do begin Query1.ParamByName('cod').asString := fmGerarRelAt.Lista2.Items[i]; Query1.Open; Total := Total + Query1.FieldByName('Quantidade').asInteger; Query1.Close; end; qrLabel5.Caption := IntToStr(Total); end; Faça esse For somente uma vez. Ele soma todos os códigos da Lista2.
×
×
  • Criar Novo...