Ir para conteúdo
Fórum Script Brasil

Graymalkin

Veteranos
  • Total de itens

    8.257
  • Registro em

  • Última visita

Tudo que Graymalkin postou

  1. Acho que vai depender da implementação do Pascal que você estiver usando. No FreePascal *acredito* que deva haver bibliotecas para isso, mas desconheço tal existência no Turbo Pascal. Abraços, Graymalkin
  2. Claro, você pode usar Pictureboxes no lugar de botões e ainda fazer outras coisas mais. Aqui tem dois exemplos de como deixar o form com um formato diferente: http://www.graymalkin.globalhosts.com.br/stuff/transp.zip http://www.graymalkin.globalhosts.com.br/stuff/transp2k.zip O último só funciona no WinXP/2000 com a paleta de cores em 32bits. Abraços, Graymalkin
  3. Graymalkin

    Asc

    Acho que nenhuma. Veja que char e int são recíprocos: #include <stdio> void main() { char c; int i; c = 65; i = 'a'; printf("%c\n", c); printf("%i\n", i); } Eu atribui o valor 65 a um char e o caracter 'a' a um inteiro. Abraços, Graymalkin
  4. Então, mova-os através do método Move ou pelas propriedades Top e Left. Abraços, Graymalkin
  5. Você pode gravar em um arquivo texto o comum o estado de todas as checkboxes e depois ao abrir o programa você restaura o mesmo a partir desse arquivo. Abraços, Graymalkin
  6. Graymalkin

    Datagrid

    O que você faz exatamente para saber se o cliente está inativo? Não haveria uma maneira de colocar isso em uma SQL a fim de obter um Recordset somente com os clientes inativos? Abraços, Graymalkin
  7. Você quer um Marquee? Abraços, Graymalkin
  8. Graymalkin

    Erro Ao Enviar E-mail

    CreateObject() sempre recebe um parâmetro string, portanto o correto é: Set Mailer = CreateObject("CDONTS.NewMail") Abraços, Graymalkin
  9. Graymalkin

    Datagrid

    Acho que isso aí ficou meio confuso. Experimente explicar de outra forma e detalhar melhor o problema. Abraços, Graymalkin
  10. Você pode usar a função Right() ou simplesmente mudar a linha... pasta = "c:\temp\" ... para: pasta = "c:\temp\*.jpg" Porém, acho que usar o Right() torna a coisa mais versátil, já que você pode pegar mais de um tipo de arquivo em uma única varredura. Abraços, Graymalkin
  11. Retire as aspas, ou ele trocará apenas se for a palavra "vbcrlf" e não o valor referente a vbcrlf. Ou seja: declaracao = replace(declaracao, vbcrlf, "<br>") Abraços, Graymalkin
  12. Graymalkin

    Troca Imagens

    Coloque duas images no form e carregue figuras em ambas, e coloque o código abaixo no evento OnClick de um botão: var posx, posy : integer; begin posx := image1.Left; posy := image1.Top; image1.Left := image2.Left; image1.Top := image2.Top; image2.Left := posx; image2.Top := posy; end; Você quer dizer algo assim? Abraços, Graymalkin
  13. Sim, você pode fazer assim (usei um StringGrid agora, mas é no mesmo evento [DrawCell]): var valor : string; begin valor := StringGrid1.Cells[ACol, ARow]; if valor='00' then ImageList1.Draw(StringGrid1.Canvas, Rect.Left, Rect.Top, 0) else if valor='01' then ImageList1.Draw(StringGrid1.Canvas, Rect.Left, Rect.Top, 1); end; Ou você pode pegar o valor da célula, converter para inteiro e utilizá-lo como índice. Abraços, Graymalkin
  14. Consegui fazer isso com o DrawGrid, utilizando também uma ImageList. Preenchi a ImageList com algumas figuras e coloquei o seguinte código no evento DrawCell da DrawGrid: var idx : integer; begin idx := ACol; if (idx<=ImageList1.Count) and (ARow=1) then ImageList1.Draw(DrawGrid1.Canvas, Rect.Left, Rect.Top, idx); end; Com isso, ele vai preencher a primeira linha (sem contar a linha fixa) com as figuras existentes na ImageList (ou até que ela acabe). Abraços, Graymalkin
  15. Isso é escolhido nas propriedades do projeto no ISTool. O nome desse tipo de compactação aparace como LZMA (escrevi 7-Zip ali porque esse é o programa que compacta nesse formato). Quanto ao uso do Inno e do ISTool, basta apenas que você use o último que é uma interface gráfica para o primeiro (e acho que ela é bastante intuitiva). Abraços, Graymalkin
  16. Em lugar algum. Por isso que salientei que: """para imprimir o conteúdo do DBGrid (ou seja, os registros), mas não a imagem do mesmo (aliás, deve ser possível fazer isso também), você pode usar o objeto Printer.""" Ou seja, o código real seria algo do tipo: Printer.BeginDoc; Printer.Canvas.TextOut(0, 0, Table1.Fields['campo'].AsString;); Printer.Enddoc; Ou seja, seria necessário percorrer toda a tabela imprimindo campo a campo. Abraços, Graymalkin
  17. Na verdade eu não expliquei direito mesmo. Acabei lembrando do UPX no final da mensagem e esqueci de falar que ele não tem nada haver com o ISTool e o Inno. Você pode baixá-lo em http://www.upx.org/. Esse programa permite que você compacte arquivos executáveis (como EXEs, DLLs, OCXs, PYDs, etc.) mantendo os mesmos funcionais. Ou seja, você compacta e o arquivo permanece com o mesmo nome e funcionando do mesmo jeito. Na verdade o arquivo é descompactado no momento da execução, mas isso fica transparente para nós e não notei nenhum atraso significativo na inicialização de meus aplicativos por causa disso. Abraços, Graymalkin
  18. Ok, então vou colocar um exemplo aqui de como obter todos os arquivos e diretórios de uma determinada pasta (é claro que você pode especificar somente unidade [por exemplo, A:\] também): var s: TSearchRec; pasta : string; begin pasta := 'c:\teste\'; FindFirst(pasta+'*.*', faAnyFile, s); Repeat if s.Attr=faDirectory then showmessage('Diretório: ' + s.Name) else showmessage('Arquivo: ' + s.Name); Until FindNext(s) <> 0; FindClose(s); end; Você pode daí criar uma rotina recursiva para percorrer todos as subpastas apagando cada arquivo (e depois removê-las também). Abraços, Graymalkin
  19. Creio que para imprimir o conteúdo do DBGrid (ou seja, os registros), mas não a imagem do mesmo (aliás, deve ser possível fazer isso também), você pode usar o objeto Printer. Exemplo: Printer.BeginDoc; Printer.Canvas.TextOut(0, 0, 'teste'); Printer.Enddoc; Ou simplesmente abrir a porta LPT1 (ou outra) como um arquivo e enviar os dados por lá. Esse método é melhor para impressoras matriciais. Abraços, Graymalkin
  20. Seria interessante dizer como você está fazendo essa "animação". Isso porque você pode estar usando uma API do SO ou uma biblioteca externa e assim fica difícil podermos ajudar. Abraços, Graymalkin
  21. Funciona sim, a questão é que o diretório tem que estar obrigatoriamente vazio. Trata-se de apenas um arquivo? Se for, você pode simplesmente removê-lo e depois remover a pasta. Abraços, Graymalkin
  22. Graymalkin

    Eu Hein?

    Ele mostra justamente porque aquele é o número que você quer (ou você diz pelo fato de ser em hexa e não decimal?). Ou seja, se você quer o valor referente ao endereço de memória 8563, o valor de ptr é 8563 e esse é que é exibido ali. Para mostrar o valor referente a esse endereço, você deve colocar: cout<<"O inteiro em hexadecimal e: "<<*ptr<<endl; Só que isso não funciona bem não... aqui fica dando o erro de operação ilegal (acho que isso se deve a tal da "memória protegida" que cada programa tem). Abraços, Graymalkin
  23. Graymalkin

    Eu Hein?

    Ah sim, agora entendi. Vou fazer uns testes aqui e ver se consigo. Abraços, Graymalkin
  24. Dê uma olhada na função RemoveDir(). Abraços, Graymalkin
  25. Seguindo aquele código do primeiro post, acho que bastaria trocar a linha... Linha1 := Linha1+tam2; ... por: Linha1 := Linha1+tam2+#9; Note que existem duas vezes essa linha e você deverá trocar ambas. Abraços, Graymalkin
×
×
  • Criar Novo...