[delphi-br] Programa para gerar glyphs desabilitados
Pessoal: Há alguns anos, encontrei na Internet um programinha que, a partir de um pequeno bitmap colorido, gerava uma imagem igual, mas desabilitada (em tons de cinza), para ser usada, por exemplo, em SpeedButtons ou BitBtns, aparecendo quando a propriedade Enabled está como False. Alguém sabe informar o nome/endereço de algum programa desse tipo ? (de preferência, freeware) Grato pela atenção de todos Paulo [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] TeeChart - problemas com posicao do numero de pagina, no grafico impresso
Pessoal: (já enviei há algumas semanas mensagem sobre este assunto; consegui contornar alguns problemas, mas até o momento não consegui a solução para o que segue) a) Utilizo Delphi 7, com TeeChart 7.02 b) Tenho um grafico onde exibo a legenda no canto superior direito e o numero de pagina (ex.: Pagina 1/3, etc.) no canto inferior direito. c) Ao imprimir o gráfico, aparece uma janelinha de Preview, do proprio TeeChart. Nesse preview, o grafico parece estar Ok. Por default, o preview sugere margens de 8% (deixando margens em todas as bordas do papel. d) Problema: Ao imprimir o grafico na impressora, deixando as margens com 8% (o default do preview, como eu disse acima), ocorre o seguinte problema: - O numero de pagina, em vez de aparecer no canto inferior direito, aparece mais acima (cerca de 2 cm acima), invadindo o desenho do grafico. e) Descobri que, se no Preview eu deixar as margens com 0% (ou seja, sem margem alguma), o numero da pagina aparecem corretamente na impressao. Porem, gostaria que fosse possivel deixar margens, pois o visual do grafico impresso fica bem melhor. f) Já tentei de tudo, inclusive definir via código a posição do número da página, mas não consegui fazer funcionar. Agradeço muito se alguém puder dar alguma idéia sobre o que fazer. Não sei se ajuda, mas eis algumas telas ilustrando o problema: http://br.geocities.com/psdias2/duvidagrafico/tela1.jpg (gráfico exibido na tela) http://br.geocities.com/psdias2/duvidagrafico/tela2.jpg (gráfico no preview) http://br.geocities.com/psdias2/duvidagrafico/tela3.jpg (gráfico impresso - neste caso, imprimi em formato PDF, para capturar a imagem a enviar para a lista, mas na impressora sai com o mesmo problema, ou seja, o número da página invade a área do gráfico) Grato pela atenção de todos. o título parece ficar com letra maior, pois ocupa quase toda a largura da página, e com isso sobrescreve a legenda (que, repito, fica no canto superior direito do gráfico) d) Outro problema (que talvez esteja relacionado) é o número de página, que na tela aparece normalmente (por exemplo: Página 1 de 3), logo abaixo do gráfico (canto inferior direito), mas que ao ser impresso sobe cerca de 2 cm, e acaba sendo impresso dentro da região do gráfico (sobrescrevendo parte das barras que compõe o gráfico - é um gráfico de barras) Grato pela atenção de todos Paulo [As partes desta mensagem que não continham texto foram removidas]
Re: [delphi-br] Alem do ImageList, quais os outros modos de se armazenar imagens em um programa
Encontrei um tutorial sobre como armazenar imagens em um arquivo de recursos, e acho que vai me servir. O link é: http://www.delphibr.com.br/artigos/manip_recursos.htm Grato pela atenção de todos Paulo [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] Alem do ImageList, quais os outros modos de se armazenar imagens em um programa
Pessoal: a) Estou usando um ImageList para armazenar alguns bitmaps, que faco aparecer em varios forms do meu sistema (por exemplo, em varios forms tenho SpeedButton para gravar, incluir, excluir, etc., e achei melhor colocar os bitmaps apenas na ImageList, para nao ter de replicar os bitmaps em cada botao). b) O ImageList, no momento, esta configurado com Width = 16 e Height = 21 c) Porem, tenho algumas imagens com tamanhos diferentes dos acima (um pouco maiores), e o ImageList as deixa truncadas.Tentei alterar o Width e Height, mas neste caso o ImageList limpou todas as imagens (cerca de 30 imagens) e eu tive que reincluir uma a uma. Pergunta: Que outros metodos podem ser usados para guardar DENTRO DO EXECUTAVEL imagens que serao usadas no programa ? Arquivo de recursos ?Ou algum outro tipo de componente ? Eu pensei em manter 30 SpeedButtons no Form principal do sistema e pegar as imagens desses SpeedButtons, mas gostaria de saber se ha´ algum modo mais simples/elegante. Grato pela atencao de todos Paulo [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] Off-topic: Como criar este tipo de efeito em imagens, para inserir em um arquivo de help
Pessoal: Peço licença para postar este off-topic, pois talvez alguém já tenha feito algo semelhante, ao escrever helps dos seus sistemas. a) Estou escrevendo um arquivo de help para meus sistemas b) Preciso incluir algumas telas do sistema (para exemplificar o uso de botões, menus, etc.) c) Capturo as telas com PRINT SCREEN, colo no MS Paint do Windows, recorto o que interessa e depois colo no Word (por enquanto, estou escrevendo o help no Word, e depois vou estudar como converter para .CHM, ou outro formato qualquer) Pergunta: - Alguém sabe como aplicar sobre o contorno de uma imagem o efeito mostrado no exemplo a seguir ? http://br.geocities.com/psdias2/imagemhelp/figuracomcontornoirregular.gif Ou seja, quero deixar o contorno das imagens em formato não-retangular Imagino que os principais editores de imagens (PhotoShop, PhotoPaint, etc.) consigam aplicar tal efeito. Mas se alguém puder dar algumas indicações (pelo menos o nome desse efeito) já ajudará muito. Grato pela atenção e paciência de todos Paulo [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] Exportar relatório do RvSystem para PDF
Pessoal: (desculpem-me se me alonguei muito, mas tentei dar uma descrição exata do meu problema) - Utilizo Delphi 7 com o pacote RAVE 6.0 (não o que vem com o Delphi, mas um pacote mais completo, que acompanha componentes para criar o relatório via código) - Eu uso o componente RvSytem para criar relatórios - Para permitir que o usuário salve os relatórios em formato PDF (através do Preview do RvSystem), coloquei um componente RvRenderPDF no mesmo form onde está o RvSystem - Com isso, quando o usuário clica no botão Salvar (no Preview do RvSystem), aparece a opção de formato PDF - Se o relatório contém apenas texto e bordas de tabelas, o PDF fica idêntico ao Preview do RvSystem - Porém, tenho um relatório onde, além do texto, desenho vários retângulos vazados (apenas com contornos em preto) e retângulos preenchidos (borda preta com preenchimento vermelho) - é parecido (mas não idêntico) com um gráfico de Gantt (gráfico de barras horizontais). Neste relatório onde tenhos os retângulos, o Preview do RvSystem fica perfeito, mas ao salvar o relatório em PDF é gerado, mas os retângulos vazados simplesmente desaparecem, e os retângulos preenchidos saem sem borda (apenas com a cor vermelha do preenchimento). Obs.: Utilizo o comando RvSystemRelatorio.BaseReport.FrameRect() para criar os retângulos, mas imagino que o problema não esteja aí, já que no Preview tudo está Ok. Grato pela atenção de todos Paulo [As partes desta mensagem que não continham texto foram removidas]
Re: [delphi-br] Aplicação finaliza sem + nem -
Vinícius comentou: Cara, a algum tempo atrás eu tbem estava com o mesmo problema, fui ver que alguns componentes, estavam dando Access Violation internamente e o meu sistema era fechado do nada, e vc nem percebe,...da uma cavocada dentro dos seus componentes pra ver se ele não está dando algum erro que está sendo tratado e não chega até a superfície Há alguns anos, já passei por isso também (mas com Delphi 3 e Delphi 7, e somente depois que migramos do Windows 98 para Windows XP). Para fazer o problema do Access Violation aparecer, alteramos as opções dos projetos, deixando o Optimization DESsativado, as informações de debug ATIVADAS (na paleta Compiler e na paleta Linker). Depois de fazer um Build All, o Access Violation começou a aparecer. Se não me engano, um dos problemas era com um componente da RxLib, que executava alguma linha de código que no XP gerava o erro. Colocamos um try ... except protegendo essa linha onde aparecia o erro, e o problema foi solucionado (pelo menos no nosso caso, a linha em que ocorria o erro, no XP, não pareceu fazer falta aos nossos sistemas). Obs.: Note que o caso acima foi com o D3 e D7 com Windows XP. Não sei se no D2006 o caso é o mesmo. Boa sorte ! Paulo [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] Exportar TeeChart para PDF (qualidade ruim)
Pessoal: a) Utilizo Delphi 7, com TeeChart 7.02 b) Estou exportando o gráfico para formato PDF, mas a qualidade (aparência) fica bem ruim, em relação ao gráfico em tela. c) Estou usando o seguinte código: var tmpPDF : TPDFExportFormat; begin tmpPDF := TPDFExportFormat.Create; tmpPDF.Panel := Chart1; tmpPDF.SaveToFile('c:\temp\Chart1PDF.' + tmpPDF.FileExtension); tmpPDF.Free; end; d) Também já tentei usar um form já existente no TeeChart, que é chamado com o seguinte comando: TeExport.TeeExport(Self, Chart1); // chama o editor que permite diversas opções de exportação mas a qualidade, através desse modo de salvamento, também fica ruim Alguém sabe de alguma dica (talvez alguma propriedade que eu precise modificar) ? Grato pela atenção de todos Paulo [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] Como mesclar 4 arquivos bmps em um só arquivo
Pessoal: Alguém sabe como fazer o seguinte ? Tenho que mesclar 4 arquivos BMP em um único arquivo (também BMP). Imaginem que os 4 arquivos eram uma foto grande, que foi dividida em 4 pedaços iguais (com um corte em forma de cruz, bem na parte central da foto). Assim: - O PARTE1.BMP deve ficar no canto superior esquerdo do novo BMP - O PARTE2.BMP deve ficar no canto superior direito do novo BMP - O PARTE3.BMP deve ficar no canto inferior esquerdo do novo BMP - O PARTE4.BMP deve ficar no canto inferior direito do novo BMP Eu sei como ler os 4 arquivos, usando o objeto TBitMap, mas não sei como gerar o novo arquivo Grato pela atenção de todos Paulo [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] Preview do TeeChart muda tamanho do gráfico quando se se leciona páginas de tamanhos diferentes
Pessoal: É um pouco difícil explicar exatamente meu problema, mas vou tentar fazê-lo, omitindo muitos detalhes... - Alguém já percebeu que, no Preview do TeeChart (comando ChartPreview(Self,Chart1) ) , se o usuário clica em Configurar (Setup) e seleciona uma página de tamanho diferente do padrão da impressora, o Preview não apenas muda o tamanho da página, mas também redimensiona o gráfico ? Por exemplo, se o papel default é A4 e o usuário muda para Carta, a diferença é pequena, mas existe. O efeito é mais notável ao se selecionar uma página bem menor (de 10 x 15 cm, por exemplo, que está disponível no driver da impressora que estou testando). - Pelo que entendi, ao selecionar uma página diferente, a intenção do Preview é fazer com que o gráfico continue cabendo dentro da página, e por isso reduz um pouco as dimensões do desenho. Porém, para a aplicação que estou fazendo, quero simplesmente que, se o gráfico não couber dentro da página 1, simplesmente o gráfico seja cortado na primeira página, e continue sendo impresso (a parte que não coube na página 1) na próxima página - o usuário pretende juntar as diversas páginas e colá-las. Para ele, o importante é que o desenho sempre tenha o mesmo tamanho, qualquer que seja o tamanho da página que ele use - ainda que isso exija que ele tenha que juntar as diversas páginas posteriormente. Enfim, há alguma propriedade do TChart (ou do Preview) que indique que, quando o tamanho da página mudar, simplesmente o gráfico tem de ser cortado em cada página (e ser impresso em diversas páginas), mas sem mudar seu tamanho ? Espero que tenha sido claro. Já procurei alguma solução em todos os fóruns de discussão da Steema (fabricante do TeeChart), mas não encontrei nada. Grato pela atenção de todos Paulo [As partes desta mensagem que não continham texto foram removidas]
Re: [delphi-br] Preview do TeeChart muda tamanho do gráfico quando se seleciona páginas de tamanhos difere ntes
Chegamos à conclusão que o usuário somente usará papel A4 ou maior, e nesse caso (com papel maior) o Preview não altera o tamanho do desenho (gráfico) - o que elimina meu problema. Grato pela atenção de todos Paulo [As partes desta mensagem que não continham texto foram removidas]
Re: [delphi-br] comando SQL elementar, mas nao funciona
Guionardo: SELECT FIRST 1 CODPRODUTO, MAX(VALORPRODUTO) AS MAXVAL FROM TBPRODUTOS GROUP BY CODPRODUTO ORDER BY MAXVAL DESC Funcionou ! Muito obrigado ! Paulo [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] comando SQL elementar, mas nao funciona
Pessoal: a) Utilizo o FireBird 1.5, Delphi 7 e DBExpress b) Tenho uma tabela com os campos CODPRODUTO e VALORPRODUTO (na verdade, a tabela do meu sistema possui mais campos, mas para a minha dúvida isto não importa). c) Quero descobrir qual o código de produto que possui maior valor. Tentei isto: SELECT CODPRODUTO, MAX(VALORPRODUTO) FROM TBPRODUTOS Mas no IBOConsole ou no meu sistema (através de um TSQLDataSet), ocorre erro, por eu ter incluído o campo CODPRODUTO no SELECT. (se eu usar um GROUP BY funciona, mas então são trazidos vários registros, o que não atende minha necessidade). Para contornar o problema, estou fazendo um SELECT sem o MAX, ordenado pelo VALORPRODUTO e depois posiciono no último registro. Porém, gostaria de confirmar com vocês se realmente o MAX não aceita trazer nenhum outro campo. Achei estranho, pois me parece ser um tipo de SELECT que é necessário em várias situações. O que vocês fazem em uma situação como essa ? Grato pela atenção de todos. Paulo [As partes desta mensagem que não continham texto foram removidas]
Re: [delphi-br] BDE com Interbase/Firebird
A quem postou a mensagem: Mas dá o seguinte erro: UNKNOWN DATABASE Unable to complete network request to host SERVER_IB Failed to establish a connection. Além do que mencionou o Alexandre em seu e-mail, o problema também pode ser o que eu descrevi abaixo (com a solução em seguida). Descricao do Problema - Em algumas maquinas XP de meus clientes, depois que as máquinas passam por alguma atualização (Windows Update, do site da Microsoft), elas param de acessar o INTERBASE e aparece uma mensagem semelhante a esta: Excecao EDBEngineError no modulo SISPROD.exe em 0006A9E6. Unknown database. Unable to complete network request to host SERVIDOR. Failed to locate host machine. Undefined service gds_db/tcp. Alias: BD_SISTEMA Eu utilizo BDE, mas mensagem semelhante aparece tambem no IBConsole do InterBase, o que significa que o problema nao e' do BDE. Alem disso, o micro acessa normalmente a rede, mapeia drivers do servidor, e o arquivo services (em C:\WINDOWS\SYSTEM32\DRIVERS\ETC) esta' devidamente configurado, tanto na estacao problematica como no servidor. Solução -- - Por algum motivo, o Windows Update modifica o tipo de uma chave no registro, e entao o Windows nao mais consegue encontrar o arquivo services. Proceder como segue, na maquina que apresentar a mensagem descrita anteriormente: - Iniciar/Executar - Digitar REGEDIT - No lado esquerdo da tela, abrir os seguintes ítens: \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters - Confirmem no rodapé da tela do REGEDIT, se realmente abriram corretamente esse trecho da árvore do registro. Cuidado, pois há ítens na árvore de registro que aparecem em diversos locais diferentes do que mostrei acima. - Depois de abrir a árvore do registro até este ponto, no lado DIREITO da tela você deve procurar a seguinte item: DataBasePath - Clicar com o botão direito sobre o item DataBasePath e selecionar renomear (confirme se realmente clicou em DataBasePath, e não em outra chave) - Mudar o nome da chave DataBasePath para DataBasePathOLD (ou qualquer outro nome) - Ainda no lado direito da tela, clicar em uma área EM BRANCO (FORA DE QUALQUER CHAVE JÁ EXISTENTE) - Clicar na opção Novo e escolher Valor de sequencia expansível (em inglês deve ser Expandable String Value) - Informar o nome DataBasePath (exatamente como escrevi aqui) - Uma nova chave do tipo REG_EXPAND_SZ será criada - Executar um clique-duplo sobre a chave DataBasePathOLD - Selecionar o valor (provavelmente estará assim: %SystemRoot%\System32\drivers\etc ) - CTRL+C - Executar um clique-duplo sobre a chave DataBasePath - CTRL+V Obs.: O etc acima realmente e' o nome da pasta, e nao um etc. que se costuma usar para evitar enumerar uma lista grande de itens. - Fechar o REGEDIT e tentar acessar o servidor InterBase. Se o problema de conexao realmente estiver relacionado ao que mencionei acima, isso deverá resolver o problema. (Boa sorte !) Paulo [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] Ajuda para encontrar um exemplo de codigo nos arquivos da lista
Pessoal: (Tentei entrar em contato com o Eduardo Castro Alves, que enviou a mensagem abaixo, mas talvez seu e-mail tenha mudado.) Alguem pode me ajudar a encontrar o arquivo mencionado abaixo ? Entrei em varias pastas, na pagina desta lista (no Yahoo), mas nao consegui identificar qual eh o exemplo referido pelo Eduardo ? Paulo, nos arquivos da lista-delphi tem um formulario chamado dialogo que disponibilizei, que facilmente você adapta para suas nescessidades. Caso você não seja assinante, me mande um email em PVT que passo para você. Obs.: Ele enviou a dica de como montar um formulario tipo dialogo, para substituir o uso do MessageDlg. Muito obrigado pela atencao de todos Paulo [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] Componente para desenhar figuras geométricas preenchidas com algum BMP ou JPG
Pessoal: Alguém conhece algum componente (de preferência freeware) que permita desenhar figuras geométricas na tela (quadrados, retângulos, losangos e polígonos em geral), e que também aceite ser preenchido com algum .BMP ou .JPG ? A princípio, seria algo como o componente TShape original do Delphi, mas pelo que verifiquei este não permite desenhar polígonos em geral (figuras irregulares), nem aceita preenchimento com arquivos BMP/JPG. Grato pela atenção de todos. Paulo [As partes desta mensagem que não continham texto foram removidas]
Re: [delphi-br] Componente para desenhar figuras geo métricas preenchidas com algum BMP ou JPG
Pessoal: Resolvi refazer minha pergunta anterior, pois talvez eu tenha encontrado uma alternativa para meu problema: - Dei uma olhada nos recursos do TRvSystem TRvSystem (componente para relatórios que vem no pacote do RAVE) - e ele permite desenhar figuras (de modo parecido com os métodos do TCanvas). Assim, já irei criar as figuras diretamente em um relatorio (em vez de primeiro desenhar na tela e depois imprimir) - Se a idéia acima der certo, preciso agora aprender a como preencher com um BMP/JPG as figuras que irei desenhar com o TRvSystem. - Alguém sabe de alguma rotina que preencha uma região ? Acho que eu teria de passar as coordenadas de todos os vértices da figura, e então a rotina preencheria essa região com o BMP/JPG (estou falando em vértices porque, a princípio, as figuras serão todas compostas por linhas retas). Se alguém tiver alguma idéia melhor, em vez de usar o TRvSystem, gentileza enviar. Grato pela atenção de todos Paulo [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] TESTE DE MEU NOVO E-MAIL
Apenas testando meu novo e-mail de inscricao na lista. (desculpem-me o incomodo). Paulo [As partes desta mensagem que não continham texto foram removidas]