StatusBar
Moderador: Moderadores
-
toya
- Usuário Nível 3

- Mensagens: 157
- Registrado em: 26 Jul 2004 16:51
- Localização: Campo Grande/MS - Brasil
- Contato:
StatusBar
Como poderia ajustar a altura da Window para que a mesma possibilite visualizar a Barra de Ferramentas (item 1 - figura imagem-02.png) ?
Qual seria a possibilidade de gerar a StatusBar como o visual do item 2- figura imagem-02.png ?
Gerando via HMG 3.3.1. estou obtendo conforme a imagem-h02.png
Qual seria a possibilidade de gerar a StatusBar como o visual do item 2- figura imagem-02.png ?
Gerando via HMG 3.3.1. estou obtendo conforme a imagem-h02.png
Elcio Carlos
(toya)
Ahora en la version 6.5
toyasis@gmail.com (e-mail)
toyaskype (skype)
http://www.toyanet.com.br
https://www.facebook.com/profile.php?id=100009195956044
FWH 11.8+PellesC+xHarbour.org 1.2.1+SqlRDD
Clippeiro por opção, Fivewiner por amor ao Clipper...
2015 - Iniciante/Aprendiz de HMG...
(toya)
Ahora en la version 6.5
toyasis@gmail.com (e-mail)
toyaskype (skype)
http://www.toyanet.com.br
https://www.facebook.com/profile.php?id=100009195956044
FWH 11.8+PellesC+xHarbour.org 1.2.1+SqlRDD
Clippeiro por opção, Fivewiner por amor ao Clipper...
2015 - Iniciante/Aprendiz de HMG...
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
StatusBar
Olá Elcio, não sei se eu entendi direito.
Mas eu acho que se você quer inserir uma imagem dentro de um StatusBar em HMG, eu partiria com apenas uma exibição de imagem,, utilizando o control IMAGE. E adicionaria texto com a biblioteca BT em imagem. A altura da imagem a daria o control IMAGE com STRECH = .T.
Imagens també aceita evento ONCLICK para adicionar um ACTION.
Mas eu acho que se você quer inserir uma imagem dentro de um StatusBar em HMG, eu partiria com apenas uma exibição de imagem,, utilizando o control IMAGE. E adicionaria texto com a biblioteca BT em imagem. A altura da imagem a daria o control IMAGE com STRECH = .T.
Imagens també aceita evento ONCLICK para adicionar um ACTION.
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
-
toya
- Usuário Nível 3

- Mensagens: 157
- Registrado em: 26 Jul 2004 16:51
- Localização: Campo Grande/MS - Brasil
- Contato:
StatusBar
Devo estar comentendo algum erro:
Em main_form_onpaint() executo:
Em main_form_onpaint() executo:
Código: Selecionar todos
hDC := BT_CreateDC ( "Main", BT_HDC_INVALIDCLIENTAREA , @BTstruct )
BT_DrawGradientFillVertical( hDC,;
0,0,;
BT_ClientAreaWidth( "Main" ),;
BT_ClientAreaHeight( "Main" ),;
{154, 192, 205}, {154, 192, 205} )
BT_DrawBitmapAlphaBlend( hDC, 756, 8, 320, 240, 255, BT_COPY, BT_hBitmap )
//--- aqui tento pintar o StatusBar
BT_DrawGradientFillVertical( hDC,;
0,;
0,;
BT_ClientAreaWidth( "Main" ),;
BT_StatusBarHeight( "Main" ),;
WHITE, BLACK )
BT_DeleteDC( BTstruct )
Elcio Carlos
(toya)
Ahora en la version 6.5
toyasis@gmail.com (e-mail)
toyaskype (skype)
http://www.toyanet.com.br
https://www.facebook.com/profile.php?id=100009195956044
FWH 11.8+PellesC+xHarbour.org 1.2.1+SqlRDD
Clippeiro por opção, Fivewiner por amor ao Clipper...
2015 - Iniciante/Aprendiz de HMG...
(toya)
Ahora en la version 6.5
toyasis@gmail.com (e-mail)
toyaskype (skype)
http://www.toyanet.com.br
https://www.facebook.com/profile.php?id=100009195956044
FWH 11.8+PellesC+xHarbour.org 1.2.1+SqlRDD
Clippeiro por opção, Fivewiner por amor ao Clipper...
2015 - Iniciante/Aprendiz de HMG...
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
StatusBar
Oi Elcio, eu acho que sim. poruqe as funções que você está tentando utilizar eu tenho visto para mudar os fundos das telas. Nunca soube que dá para mudar o fundo do StatusBar. Vocês não deixou em claro quais são as suas intenções ou eu ao menos não entendi...toya escreveu:Devo estar comentendo algum erro

Se for algo similar ao que mostra a imagem, eu estou muito interessado em saber. Mas colocar imagem no StatusBar ? Parece-me algo meio sem nexo (desculpe se te ofendo com a minha opinião). Mas mudar a core até acho em interessante.
Parabéns pelas suas inquietudes de novas atribuições. Acho legal isso.
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
-
toya
- Usuário Nível 3

- Mensagens: 157
- Registrado em: 26 Jul 2004 16:51
- Localização: Campo Grande/MS - Brasil
- Contato:
StatusBar
Código: Selecionar todos
#include "hmg.ch"
#include "bosTaurus.ch"
#define CORTOYA { 154,192,205 }
MEMVAR _HMG_SYSDATA
declare window Main
Function main_form_onpaint
local hDC
local BTstruct
local cAux := ""
local aAux := {}
local nRow := 0
local BT_hBitmapStatusBar := BT_BitmapLoadFile ( "msg_bar.bmp" )
local i := 0
BT_hBitmap := BT_BitmapLoadFile ( cPathAux + "\logo_gnnpx_hmg.png" )
hDC := BT_CreateDC ( "Main", BT_HDC_INVALIDCLIENTAREA , @BTstruct )
BT_DrawGradientFillVertical( hDC,;
0,0,;
BT_ClientAreaWidth( "Main" ),;
BT_ClientAreaHeight( "Main" ),;
CORTOYA, CORTOYA )
BT_DrawBitmapAlphaBlend( hDC, 756, 8, 320, 240, 255, BT_COPY, BT_hBitmap )
// usar assim:
//--- StatusBar (1)
BT_DrawGradientFillVertical( hDC,;
Main.Height - 150,;
0,;
BT_ClientAreaWidth( "Main" ),;
BT_StatusBarHeight( "Main" ),;
{154, 192, 205 }, BLACK )
// ou assim:
//--- StatusBar (2)
BT_DrawBitmapAlphaBlend( hDC, Main.Height - 100, 0, BT_ClientAreaWidth( "Main" ), BT_StatusBarHeight( "Main" ), 255, BT_STRETCH, BT_hBitmapStatusBar )
BT_DeleteDC( BTstruct )
return Nil
Elcio Carlos
(toya)
Ahora en la version 6.5
toyasis@gmail.com (e-mail)
toyaskype (skype)
http://www.toyanet.com.br
https://www.facebook.com/profile.php?id=100009195956044
FWH 11.8+PellesC+xHarbour.org 1.2.1+SqlRDD
Clippeiro por opção, Fivewiner por amor ao Clipper...
2015 - Iniciante/Aprendiz de HMG...
(toya)
Ahora en la version 6.5
toyasis@gmail.com (e-mail)
toyaskype (skype)
http://www.toyanet.com.br
https://www.facebook.com/profile.php?id=100009195956044
FWH 11.8+PellesC+xHarbour.org 1.2.1+SqlRDD
Clippeiro por opção, Fivewiner por amor ao Clipper...
2015 - Iniciante/Aprendiz de HMG...
-
Claudio Soto
- Colaborador

- Mensagens: 566
- Registrado em: 27 Ago 2012 12:31
- Localização: Uruguay
- Contato:
StatusBar
Las coordenadas de posición del StatusBar son:toya escreveu:O que não estou sabendo é como descobrir as coordenadas da StatusBar para poder fazer o posicionamento correto do 'StatusBar (2)'
Código: Selecionar todos
nCol := 0
nRow := BT_ClientAreaHeight( cFormName ) - BT_StatusBarHeight ( cFormName )
nWidth := BT_StatusBarWidth ( cFormName )
nHeight := BT_StatusBarHeight ( cFormName )
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
StatusBar
Gracias Claudio por responder.
Agora que eu entendi o que você queria Elcio. Você precisava saber a altura (tamanho) do StatusBar para poder exibir o tamanho certo do teu ClientAreaHeight.
Assim como demostrou o Claudio, tem o C:\hmg.3.3.1\SAMPLES\BosTaurus\Demo7.prg como exemplo.
Agora que eu entendi o que você queria Elcio. Você precisava saber a altura (tamanho) do StatusBar para poder exibir o tamanho certo do teu ClientAreaHeight.
Assim como demostrou o Claudio, tem o C:\hmg.3.3.1\SAMPLES\BosTaurus\Demo7.prg como exemplo.
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
-
toya
- Usuário Nível 3

- Mensagens: 157
- Registrado em: 26 Jul 2004 16:51
- Localização: Campo Grande/MS - Brasil
- Contato:
StatusBar
ok...
Determinadas a coordenadas corretamente...
O problema é que não está sobrepondo quando executo:
BT_DrawBitmapAlphaBlend( hDC, nRow, nCol, nWidth, nHeight, 255, BT_STRETCH, BT_hBitmapStatusBar )
Determinadas a coordenadas corretamente...
O problema é que não está sobrepondo quando executo:
BT_DrawBitmapAlphaBlend( hDC, nRow, nCol, nWidth, nHeight, 255, BT_STRETCH, BT_hBitmapStatusBar )
Código: Selecionar todos
#include "hmg.ch"
#include "bosTaurus.ch"
#define CORTOYA { 154,192,205 }
MEMVAR _HMG_SYSDATA
declare window Main
Function main_form_onpaint
local hDC
local BTstruct
local cAux := ""
local aAux := {}
local BT_hBitmapStatusBar := BT_BitmapLoadFile ( "msg_bar.bmp" )
local i := 0
local nCol := 0
local nRow := 0
local nWidth := 0
local nHeight := 0
BT_hBitmap := BT_BitmapLoadFile ( cPathAux + "\logo_gnnpx_hmg.png" )
hDC := BT_CreateDC ( "Main", BT_HDC_INVALIDCLIENTAREA , @BTstruct )
BT_DrawGradientFillVertical( hDC,;
0,0,;
BT_ClientAreaWidth( "Main" ),;
BT_ClientAreaHeight( "Main" ),;
CORTOYA, CORTOYA )
BT_DrawBitmapAlphaBlend( hDC, 756, 8, 320, 240, 255, BT_COPY, BT_hBitmap )
nCol := 0
nRow := BT_ClientAreaHeight( "Main" ) - BT_StatusBarHeight ( "Main" )
nWidth := BT_StatusBarWidth ( "Main" )
nHeight := BT_StatusBarHeight ( "Main" )
//--- StatusBar (1) -> não aparece, prevalece a StatusBar normal
BT_DrawBitmapAlphaBlend( hDC, nRow, nCol, nWidth, nHeight, 255, BT_STRETCH, BT_hBitmapStatusBar )
//--- StatusBar (2) -> gerei mais acima para certificar que a linha de comando está correta
BT_DrawBitmapAlphaBlend( hDC, nRow - nHeight, nCol, nWidth, nHeight, 255, BT_STRETCH, BT_hBitmapStatusBar )
BT_DeleteDC( BTstruct )
return Nil
Elcio Carlos
(toya)
Ahora en la version 6.5
toyasis@gmail.com (e-mail)
toyaskype (skype)
http://www.toyanet.com.br
https://www.facebook.com/profile.php?id=100009195956044
FWH 11.8+PellesC+xHarbour.org 1.2.1+SqlRDD
Clippeiro por opção, Fivewiner por amor ao Clipper...
2015 - Iniciante/Aprendiz de HMG...
(toya)
Ahora en la version 6.5
toyasis@gmail.com (e-mail)
toyaskype (skype)
http://www.toyanet.com.br
https://www.facebook.com/profile.php?id=100009195956044
FWH 11.8+PellesC+xHarbour.org 1.2.1+SqlRDD
Clippeiro por opção, Fivewiner por amor ao Clipper...
2015 - Iniciante/Aprendiz de HMG...
-
Claudio Soto
- Colaborador

- Mensagens: 566
- Registrado em: 27 Ago 2012 12:31
- Localização: Uruguay
- Contato:
StatusBar
El problema es que el evento On Paint() siempre se ejecuta antes de que se dibujen los controles.toya escreveu:ok...
Determinadas a coordenadas corretamente...
O problema é que não está sobrepondo quando executo:
BT_DrawBitmapAlphaBlend( hDC, nRow, nCol, nWidth, nHeight, 255, BT_STRETCH, BT_hBitmapStatusBar )
Hace tiempo que estoy pensando en crear un evento ON PostPaint(), es muy sencillo de implementarlo (ya lo anoté en mi lista de temas pendientes), sería muy útil en creación de splash window con controles (ej. ProgressBar).