Página 1 de 1

nome do programa na barra de titulos

Enviado: 13 Mar 2009 13:44
por Mário Isa
toda vez que eu rodo um .EXE / o nome dele aparece na barra de títulos / isso só acontece no XP / no 98 não / e assim / o ultimo .EXE que rodou o nome dele fica lá /

Tem como desabilitar isso ?

Mário

Re: nome do programa na barra de titulos

Enviado: 13 Mar 2009 13:53
por sygecom
Esta usando alguma LIB grafica ou alguma como a GTWVT, GTWVW, WVWTOOLS ?

Re: nome do programa na barra de titulos

Enviado: 13 Mar 2009 15:23
por Mário Isa
não ! por enquanto nenhuma / estou pensando em utilizar WVW MAS AINDA ESTOU NO início / Mário

Re: nome do programa na barra de titulos

Enviado: 13 Mar 2009 16:52
por sygecom
Olá Mario,
Pode usar assim:

Código: Selecionar todos

Function MAIN()
SETCONSOLETITLE("Nome do Titulo da Janela")
alert("verefique o nome da janela")
Return

#pragma BEGINDUMP

 #include <windows.h>
 #include <hbapi.h>

 HB_FUNC( SETCONSOLETITLE )
 {
    SetConsoleTitle( (LPCTSTR) hb_parc(1) );
 }

#pragma ENDDUMP

nome do programa na barra de titulos

Enviado: 18 Jun 2012 13:17
por Abel
pessoal, estou usando o comando HB_GTINFO(hb_gti_wintitle, "titulo da janela") para colocar o titulo na janela atraves do harbour. Tenho uma duvida, existe alguma forma de colocar a informacao no final da barra de titulo, independente do tamanha da janela.

Exemplo de uma Barra:

Sistema XXX - Usuario: Maria da Silva Santos Data Atual: 18/06/2012

ou seja, queria colocar a data alinhada a direita.

Abracos,
ABEL

nome do programa na barra de titulos

Enviado: 18 Jun 2012 13:37
por Imatech
Se entendi a solicitação:

Código: Selecionar todos


Local cApp := 'Sistema XXX - Usuario: Maria da Silva Santos : Data Atual: [' + TRAN( DATE(), '@E' ) + ']'

HB_GTINFO(hb_gti_wintitle, cApp )


nome do programa na barra de titulos

Enviado: 19 Jun 2012 02:01
por Abel
Eu ate consegui colocar a data na barra, usando dtoc(date()), mas o que eu queria mesmo era que esta data
ficasse alinhada a direita perto do (x) do windows.

exemplo:

"sistema xxxx - usuario; xxxxxxx _________________________ data Atual: 99/99/9999"

entenda a linha como se fossem espacos...

no outro post eu coloquei espacos mas ele comeu os espacos por isso vc nao percebeu minha intencao.
mesmo assim, valeu.
Abracos,
ABEL

nome do programa na barra de titulos

Enviado: 19 Jun 2012 08:43
por ANDRIL
Depende da largura da janela. Como no seu exemplo data Atual: 99/99/9999 voce tem 22 caracteres para a data, se a janela tiver 79 colunas:

Código: Selecionar todos

cTitle:=padr("sistema xxxx - usuario; xxxxxxx",57) + padl("data Atual: "+dtoc(date()) 
HB_GTINFO(hb_gti_wintitle, cTitle )
79-22=57 espacos

Ou faça este teste
espaco=48

Código: Selecionar todos

cTitle="Sistema cafe com leite"+repli(" ",espaco)+"usuario: Teste"
comando="CMD /C TITLE "+cTitle
run &comando
Neste exemplo, não use o RUN substitua por outro comando da linguagem que voce utiliza para executar comandos externos e ve se da certo. Eu fiz um teste com o RUN e so me permitiu que o valor do espaço fosse ate 48. Fiz o teste pelo prompt de comando e nesse caso permitiu ate 222 caracteres. Teste ai.

Abraços.

nome do programa na barra de titulos

Enviado: 19 Jun 2012 19:41
por Abel
Perfeito Andril, a questao é realmente esta, como saber o tamanho da janela em caracteres ja que a barra azul da janela pode ser redimensionada, e mesmo que eu travasse o "estica e encolhe da janela com o mouse", como eu faco para saber quantos caracteres cabe na barra de titulo da janela.

sua dica usando padl foi interessante, pois eu nunca usei este comando.

valeu,
ABEL

nome do programa na barra de titulos

Enviado: 19 Jun 2012 21:38
por ANDRIL
Abel escreveu:como eu faco para saber quantos caracteres cabe na barra de titulo da janela
É... essa é uma outra conversa. Usa modo gráfico ou console? Se for console, voce deve medir quantos caracteres cabem ate atingir o máximo para ter uma noção. Quanto ao redimencionamento da janela com mouse, o nome sera encurtado monstrado "...". A fonte da barra da janela não é regular (como a Courier) entao cada caracter tem um tamanho diferente, pense nisso também.
Boa sorte.

nome do programa na barra de titulos

Enviado: 20 Jun 2012 00:34
por Abel
a programa esta procedural, clipper compilado pelo harbour, mas estou usando -gui e a lib gtwvt

andei procurando se existe uma forma de descobrir o tamanho da barra de titulo ou um comando para exibir
da direita para a esquerda, mas nao localizei.

Abel

nome do programa na barra de titulos

Enviado: 20 Jun 2012 12:57
por Jairo Maia
Olá Abel,

Veja se isso ajuda:

Código: Selecionar todos

nScreenWidt := HB_GtInfo( HB_GTI_SCREENWIDTH, Nil )
nScreenHeight := HB_GtInfo( HB_GTI_SCREENHEIGHT, Nil )

? nScreenWidt
? nScreenHeight

nome do programa na barra de titulos

Enviado: 21 Jun 2012 22:47
por Abel
Jairo, este comando me devolveu o tamanho da janela 880 x 560 ,
mas como vou calcular quantos caracteres podem ser colocados na barra de titulo para poder colocar a data no canto direito.. ?

vc sabe se pode-se fazer alguma conta ?

Abracos,
ABEL

nome do programa na barra de titulos

Enviado: 22 Jun 2012 13:37
por Jairo Maia
Olá Abel,

Por tentativa e erro cheguei neste exemplo. Acho que pode melhorar, veja se ajuda para seu objetivo:

Para compilar use HBMK2 <exemplo> -lxhb

Código: Selecionar todos

#include "hbgtinfo.ch"

REQUEST HB_GT_WVT_DEFAULT

REQUEST HB_LANG_PT
REQUEST HB_CODEPAGE_PT850

Function Main()
 Local nKey, nRowMax := MaxRow(), nColMax := MaxCol()
 Priv xFontName, xFontSize, xFontWidth

 HB_SETCODEPAGE('PT850')
 HB_LANGSELECT('PT')

 SET CENTURY ON
 SET DATE BRIT

 xFontName := "Lucida Console"
 xFontSize := 19
 xFontWidth := 8

 HB_GtInfo( HB_GTI_FONTNAME, xFontName )
 HB_GtInfo( HB_GTI_FONTWIDTH, xFontWidth )
 HB_GtInfo( HB_GTI_FONTSIZE, xFontSize )

 WHIL LastKey() != 27
  SetColor( "GR+/N" )
  DispBox( 0, 0, nRowMax, nColMax, Nil )

  @ 10, 25 Say "Pressione ( + ) Para Aumentar"
  @ 12, 25 Say "Pressione ( - ) Para Diminuir"
  nKey := Inkey( 0 )

  If nKey = Asc( "+" )
   xFontSize += If( xFontSize = 26, 0, 1 )
  ElseIf nKey = Asc( "-" )
   xFontSize -= If( xFontSize = 10, 0, 1 )
  Else
   Loop
  EndiF

  xFontWidth := Int( xFontSize / 2 ) - 1

  HB_GtInfo( HB_GTI_FONTWIDTH, xFontWidth )
  HB_GtInfo( HB_GTI_FONTSIZE, xFontSize )

  nTelaWidth := HB_GtInfo( HB_GTI_SCREENWIDTH )

  @ 08, 26 Say "Tamanho Atual da Tela = "+LTrim( Str( nTelaWidth ) )
  
  cData := DToC( Date() )
  cTitulo := "Teste de Título na Janela e Data"
  
  nQtdChr := Int( nTelaWidth * 0.20 )
  nQtdChr -= ( ( Len( cTitulo ) + Len( cTitulo ) / 2 ) + 2 )

  If nTelaWidth > 900
   nQtdChr += Int( nTelaWidth * 0.015 )
  ElseIf nTelaWidth >= 800
   nQtdChr += Int( nTelaWidth * 0.01 )
  ElseIf nTelaWidth = 720
   nQtdChr += Int( nTelaWidth * 0.005 )
  ElseIf nTelaWidth > 720
   nQtdChr += Int( nTelaWidth * 0.01 )
  ElseIf nTelaWidth > 640
   nQtdChr += Int( nTelaWidth * 0.02 )
  ElseIf nTelaWidth = 400
   nQtdChr -= Int( nTelaWidth * 0.03 )
  ElseIf nTelaWidth < 400
   nQtdChr -= Int( nTelaWidth * 0.05 )
  ElseIf nTelaWidth < 560
   nQtdChr -= Int( nTelaWidth * 0.02 )
  ElseIf nTelaWidth = 640
   nQtdChr := nQtdChr  // nada faz
  ElseIf nTelaWidth < 640
   nQtdChr -= Int( nTelaWidth * 0.01 )
  ElseIf nTelaWidth < 720
   nQtdChr -= Int( nTelaWidth * 0.02 )
  Endi

  cTitulo := cTitulo + PadL( cData, nQtdChr )
  HB_GtInfo( HB_GTI_WINTITLE, cTitulo )

 ENDD

Return