[delphi-br] Programa para gerar glyphs desabilitados

2008-06-04 Por tôpico psdias2 (Yahoo)
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

2008-05-15 Por tôpico psdias2 (Yahoo)
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

2008-05-04 Por tôpico psdias2 (Yahoo)
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

2008-05-03 Por tôpico psdias2 (Yahoo)
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

2008-04-11 Por tôpico psdias2 (Yahoo)
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

2008-04-07 Por tôpico psdias2 (Yahoo)
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 -

2008-04-07 Por tôpico psdias2 (Yahoo)
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)

2008-04-07 Por tôpico psdias2 (Yahoo)
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

2008-04-03 Por tôpico psdias2 (Yahoo)
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

2008-03-27 Por tôpico psdias2 (Yahoo)
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

2008-03-27 Por tôpico psdias2 (Yahoo)
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

2008-01-13 Por tôpico psdias2 (Yahoo)
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

2008-01-12 Por tôpico psdias2 (Yahoo)
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

2007-12-18 Por tôpico psdias2 (Yahoo)
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

2007-12-05 Por tôpico psdias2 (Yahoo)
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

2007-11-24 Por tôpico psdias2 (Yahoo)
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

2007-11-24 Por tôpico psdias2 (Yahoo)
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

2007-11-08 Por tôpico psdias2 (Yahoo)
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]