Ir para conteúdo
Fórum Script Brasil

Jhonas

Monitores
  • Total de itens

    9.657
  • Registro em

Tudo que Jhonas postou

  1. vamos ver: melhor loja .........| total de codigos.....| masculino | feminino Pernambucanas ..|.........50................|....20.........|......30..... lojas cem ...........|.........10................|.....5.........|.......5...... casas bahia.........|.........6..................|.....3.........|.......3...... voce vai precisar criar um novo campo calculado melhor loja .........| total de codigos| masculino | feminino | Percentual Pernambucanas ..|.........50......|....20.........|......30.....|.....75,75 % lojas cem ...........|.........10......|.....5.........|.......5......|.....15,16 % casas bahia.........|.........6........|.....3.........|.......3......|.....9,09 % primeiro voce deve entender a lógica de usar campos calculados veja os links http://www.facape.br/jocelio/es/material_e...poCalculado.pdf http://www.devmedia.com.br/post-503-Criand...entdataset.html http://www.ramosdainformatica.com.br/art_r...s01.php?CDA=612 http://www.planetadelphi.com.br/dica/6729/...campo-calculado http://www.lula.pro.br/artigo.asp?codigo=209&autor=Naks abraço
  2. O Windows usa um arquivo chamado “AUTORUN.INF” que fica na raiz de unidades removíveis (como pendrives, cd’s e dvd’s) para saber o que fazer quando este dispositivo for conectado. Quando o disposito é inserido, o sistema simplesmente executa o que o este arquivo mandar executar. Com essa informação , acho que voce consegue bolar alguma coisa não ? abraço
  3. voce tem que ser mais explicito ... sempre dê um exemplo do que voce quer para faciliar a resposta abraço
  4. Leia o artigo, para entender mais sobre caracteristicas e recursos dos processadores http://www.hardware.com.br/tutoriais/carac...ticas-recursos/ abraço
  5. Em um desses tópicos voce vai achar a resposta ... procure por ActiveControl no evento OnKeyPress do DBgrid http://scriptbrasil.com.br/forum/index.php...e=ActiveControl abraço
  6. Erro: Could Not Find Object Não Pode Achar Objeto Este erro acontece quando o componente TQuery, IBQuery, ZQuery ou outro não foi encontrado.... sugestão: delete o componente e coloque ele novamente no form e veja se ele aparece declarado no type. abraço
  7. exemplo: procedure TForm1.Button1Click(Sender: TObject); var i : integer; begin Query1.Active := true for i := 0 to dbgrid3.FieldCount -1 do begin showmessage(dbgrid3.Fields[i].AsString); Query1.Next; /// proximo registro end; end; retificando: procedure TForm1.Button1Click(Sender: TObject); var i : integer; begin Query1.Active := true for i := 0 to Query1.RecordCount -1 do begin showmessage(Query1Nome.AsString); Query1.Next; /// proximo registro end; end; OBS: se voce colocar Fields , sera mostrado o nome dos campos e não o seu conteudo abraço
  8. veja o help do delphi ... The case statement may provide a readable alternative to deeply nested if conditionals. A case statement has the form o case é uma forma de substituir o if quando se usa numeros no lugar de strings, para facilitar o desenvolvimento .... então se quer usar strings voce tem que usar o comando if abraço
  9. nesse caso, voce deve colocar uma tela de tamanho padrão, idependente da resolução em que estiver o video exemplo: http://scriptbrasil.com.br/forum/index.php...st&p=528172 abraço
  10. o arquivo corrompido, indica que o report não foi totalmente convertido para o PDF abraço
  11. se voce quiser passar o seu projeto em delphi 5 para delphi 7, voce tera que trocar alguns componentes, mas somente aqueles em que for acusado erro. abraço
  12. lembre-se, que tudo que é feito manualmente pode ser feito automaticamente ... só depende de como voce gostaria de realizar essa tarefa, ou seja, em que evento voce quer realizar isso. coloque o código que voce usa no DBEdit para facilitar a resposta abraço
  13. Amigo, muitas vezes deixamos de fazer algo em programação, por não entender o Help ( socorro ) que esta em outra lingua ( no caso do delphi em ingles ) então se queremos as coordenadas de um componente em relação ao form, o proprio delphi nos dá a solução.... mas por não ser em nossa lingua, ficamos quebrando a cabeça para descobrir ... não é ? veja o help sobre: a tradução seria essa: Especifica o retângulo do controle, expressado no sistema de coordenada do controle pai. Use BoundsRect como um modo rápido para obter os locais de pixel de todos os cantos do controle tudo de uma vez. ou seja: voce pode usar o comando BoundsRect para obter as coordenadas dos cantos do controle ( no caso um componente Timage ) exemplo: procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); var R: TRect; begin r := image1.BoundsRect; label1.Caption := inttostr(R.Top); // posição em cima label2.Caption := inttostr(R.Left); // posição esquerda label3.Caption := inttostr(R.Right); // posição direita label4.Caption := inttostr(R.Bottom); // posição em baixo end; OBS: ao clicar no componente TImage, as posições se referem aos cantos do TImage em relação ao form onde esta inserido abraço
  14. onde aparece o código de barras quando ele é gerado ?
  15. veja se entende esse exemplo http://www.festra.com/eng/snip06.htm abraço
  16. envie a fonte junto com o pdf ou então procure por uma fonte que seja comum a todos. abraço
  17. então faça um teste interno dentro do campo que foi clicado abraço
  18. Jhonas

    User Control

    veja http://www.cityinthesky.co.uk/opensource/DCPcrypt abraço
  19. extamente function parimpar(var num:integer) :boolean; begin if num mod 2 = 0 then result := true else result := false; end; procedure TForm1.Button1Click(Sender: TObject); var n : integer; begin n := 3; if parimpar(n) then showmessage('par') // se o resto da divisão for 0 else showmessage('impar'); // se o resto da divisão for > 0 end; abraço
  20. Essa piscada é justamente o tempo que leva para carregar a imgem ... desabilite o Timage durante esse tempo abraço
  21. voce não tem que comparar se o campo do dbgrid1 é igual ao campo do dbgrid2, e sim se o campo do dbgrid1 é o campo que voce quer... exemplo: procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin if (Column.Field.FieldName = 'TIPO') then begin DBGrid2.Canvas.Font.Color:= clRed; DBGrid2.Canvas.FillRect(Rect); DBGrid2.DefaultDrawColumnCell(Rect, DataCol, Column, State); end else begin DBGrid2.Canvas.Font.Color:= clBlack; DBGrid2.Canvas.FillRect(Rect); DBGrid2.DefaultDrawColumnCell(Rect, DataCol, Column, State); end; end; abraço
  22. se quiser usar Table no lugar da Query, o campo deverá ser do tipo logical ... e nesse caso a propriedade DisplayValues passara a existir para o Table. abraço
  23. achei que voce ia sacar o lance de que o somatório de valores time, sempre retorna um valor decimal exemplo: sendo t uma variavel do tipo real e h* do tipo TTime h1 := strtotime('11:00:00'); h2 := strtotime('10:00:00'); h3 := strtotime('12:00:00'); h4 := strtotime('14:30:00'); h5 := strtotime('15:50:00'); t := h1+h2+h3+h4+h5; seria o mesmo que : t := 0,45833333333 + 0,4166666667 + 0,5 + 0,6972222222 + 0,65972222222 então voce poderia fazer uma conversão do valor decimal para hora ----------------------------------------------------------------------------- outra possibilidade seria converter as horas em segundos e depois fazer o somátorio exemplo: uses DateUtils; //Função converter Segundos para Horas function Seg_Hora( Seg:LongInt ):string; Var Hora,Min:LongInt; Tmp : Double; begin Tmp := Seg / 3600; Hora := Round(Int(Tmp)); Seg := Round(Seg - (Hora*3600)); Tmp := Seg / 60; Min := Round(Int(Tmp)); Seg := Round(Seg - (Min*60)); Result := FormatFloat( '00', Hora )+ ':' + FormatFloat( '00', Min ) + ':' + FormatFloat( '00', Seg ); end; procedure TForm1.Button1Click(Sender: TObject); var h1,h2,h3,h4,h5, tot : TTime; seg : integer; begin //11:00 + 10:00 + 12:00 + 14:30 + 15:50 = 63:20:00 seg := 0; h1 := strtotime('11:00:00'); h2 := strtotime('10:00:00'); h3 := strtotime('12:00:00'); h4 := strtotime('14:30:00'); h5 := strtotime('15:50:00'); seg := seg + SecondsBetween(0,h1); seg := seg + SecondsBetween(0,h2); seg := seg + SecondsBetween(0,h3); seg := seg + SecondsBetween(0,h4); seg := seg + SecondsBetween(0,h5); label1.Caption := Seg_Hora(seg); end; o resultado final sera: 63:20:00 abraço
  24. veja seu outro post ... a idéia é semelhante usando o evento OnDrawColumnCell abraço
  25. exemplo: procedure TForm1.Button1Click(Sender: TObject); var h1,h2,h3,h4, tot : TTime; begin h1 := strtotime('02:00:12'); h2 := strtotime('00:40:14'); h3 := strtotime('01:30:42'); h4 := strtotime('00:25:15'); tot := h1+h2+h3+h4; label1.Caption := timetostr(tot); end; basta adaptar o código se for para ler um campo da tabela abraço
×
×
  • Criar Novo...