Dúvida com SetMode
Moderador: Moderadores
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Dúvida com SetMode
Sei lá....
Em 30 anos de windows, nada mudou.
Aplicativo console usa o tamanho da letra da janela console.
Se o tamanho da letra da janela é grande, o aplicativo também vai ter letra grande.
Se alterar só na janela atual, só vale pra janela atual.
Tem que alterar no ATALHO.
No Windows 10 e 11, o atalho não é exatamente aonde clica, como era nos windows anteriores.
Também poderia usar uma GT que não dependa da configuração do Windows.
Só adicionar -gui na compilação, mas se não tiver uma errorsys adequada, vai ficar sem o erro completo quando acontecer erro.
Em 30 anos de windows, nada mudou.
Aplicativo console usa o tamanho da letra da janela console.
Se o tamanho da letra da janela é grande, o aplicativo também vai ter letra grande.
Se alterar só na janela atual, só vale pra janela atual.
Tem que alterar no ATALHO.
No Windows 10 e 11, o atalho não é exatamente aonde clica, como era nos windows anteriores.
Também poderia usar uma GT que não dependa da configuração do Windows.
Só adicionar -gui na compilação, mas se não tiver uma errorsys adequada, vai ficar sem o erro completo quando acontecer erro.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Dúvida com SetMode
Não entendi bem esta parte. Acho que a questão não é de tamanho da letra, e sim de tamanho da janela.Aplicativo console usa o tamanho da letra da janela console.
Se o tamanho da letra da janela é grande, o aplicativo também vai ter letra grande.
Isso eu sei. Alterei no atalho, não na janela atual.Se alterar só na janela atual, só vale pra janela atual.
Tem que alterar no ATALHO.
Como assim? Onde é o atalho? Eu alterei clicando no atalho com o botão direito, escolhendo propriedades.No Windows 10 e 11, o atalho não é exatamente aonde clica, como era nos windows anteriores.
Errorsys eu tenho.Também poderia usar uma GT que não dependa da configuração do Windows.
Só adicionar -gui na compilação, mas se não tiver uma errorsys adequada, vai ficar sem o erro completo quando acontecer erro.
Seria só assim?:
Código: Selecionar todos
\hb32\bin\hbmk2 processos -guiInacio de Carvalho Neto
- carlaoonline
- Usuário Nível 3

- Mensagens: 190
- Registrado em: 24 Ago 2014 22:38
- Localização: Porto Alegre-RS
Dúvida com SetMode
Tenta acessando as propriedades do aplicativo no menu esquerdo superior e deixa na altura e largura da janela as mesmas medidas do SetMode usado no programa.
Na aba "Opções", marcando ou desmarcando as caixas de seleções que estão ali alteram a forma de como o mouse e o copiar-colar funcionam.
Na aba "Opções", marcando ou desmarcando as caixas de seleções que estão ali alteram a forma de como o mouse e o copiar-colar funcionam.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Dúvida com SetMode
Se ele passou a compilar com -gui, isso não faz mais diferença.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
Dúvida com SetMode
Sem dúvida, mas pelo que você diz, a diferença nesse computador específico está na "resolução da tela" que ela está usando. Verifique se não é isso.cjp escreveu:Acho que a questão não é de tamanho da letra, e sim de tamanho da janela.
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
- mauricioportela
- Usuário Nível 2

- Mensagens: 95
- Registrado em: 29 Jul 2016 04:22
- Localização: Vitoria da Conquista/Bahia
Dúvida com SetMode
Boa noite!
Eu fiz uma modificacao no codigo:
Compilar: hbmk2 testa_cor.prg -l hbct.hbc
Tambem criei um arquivo .bat para testar:
Espero que ajude!
Mauricio Portela
Eu fiz uma modificacao no codigo:
Compilar: hbmk2 testa_cor.prg -l hbct.hbc
Código: Selecionar todos
//
// Nome do Arquivo: testa_cor.prg
//
#include "box.ch"
#include "inkey.ch"
#define TRUE .T.
#define FALSE .F.
#define COR_PADRAO "W+/BG,W/R,,,N/W"
#define COR_RESULTADO "R+/BG"
FUNCTION Main()
// -------------------------------------------------------------------------
PUBLIC nVoltas := 1
PUBLIC nAlturaOriginal := MaxRow()
PUBLIC nLarguraOriginal := MaxCol()
PUBLIC nAlturaDaTela := 5
PUBLIC nLarguraDaTela := 30
// -------------------------------------------------------------------------
SETMODE(nAlturaOriginal, nLarguraOriginal)
@ 00, 00, nAlturaOriginal-1, nLarguraOriginal-1 BOX B_SINGLE + SPACE(1) COLOR COR_RESULTADO
cTela1 := SAVESCREEN(01,01,nAlturaDaTela-1,nLarguraDaTela-1)
INKEY(.5)
// -------------------------------------------------------------------------
WHILE TRUE
// ---------------------------------------------------------------------
SETMODE(nAlturaDaTela, nLarguraDaTela)
@ 01, 01, nAlturaDaTela-1, nLarguraDaTela-1 BOX B_SINGLE + space(1) COLOR COR_PADRAO
@ 02, 02 SAY STRZERO(nVoltas,3) + " volta" + IIF(nVoltas == 1, "", "s") COLOR COR_PADRAO
@ 04, 02 SAY "<ESC> para Sair" COLOR COR_PADRAO
cTela2 := SAVESCREEN(01,01,nAlturaDaTela-1,nLarguraDaTela-1)
INKEY(2)
If LASTKEY() == K_ESC
EXIT
Endif
// ---------------------------------------------------------------------
SETMODE(nAlturaOriginal, nLarguraOriginal)
RESTSCREEN(01,01,nAlturaDaTela-1,nLarguraDaTela-1,cTela2)
@ 00, 00, nAlturaOriginal, nLarguraOriginal BOX B_SINGLE COLOR COR_RESULTADO
@ 02, 24 SAY STRZERO(GeraNumero(99999,1),5) COLOR COR_RESULTADO
nVoltas++
INKEY(2)
IF LASTKEY() == K_ESC
EXIT
ENDIF
RESTSCREEN(01,01,nAlturaDaTela-1,nLarguraDaTela-1,cTela1)
// ---------------------------------------------------------------------
ENDDO
SETMODE(nAlturaOriginal, nLarguraOriginal)
@ nAlturaOriginal, 00 SAY ">>>" COLOR COR_PADRAO
RETURN Nil
FUNCTION GeraNumero(lim, ini)
RETURN INT(RAND()*lim)+IIF(ini==Nil,1,ini)
Código: Selecionar todos
@echo off
:: Nome do Arquivo: tcor.bat
:: mode con lines=25 cols=80
testa_cor.exe
set "meuErro=%errorlevel%"
if %meuErro% equ 0 (
echo SUCESSO!
) else (
echo ERRO! Codigo: %meuErro% Descricao: %errorlevel:~-4%
)
pause
Mauricio Portela
Dúvida com SetMode
A compilação com -gui não resolveu.
Esta tela de configuração não aparece no computador dessa usuária. Acho que o windows é bem diferente. Quando clico com o botão direito do mouse no canto superior esquerdo da tela, aparece uma tela de configuração bem mais complexa, e não tem essas opções.
Esta tela de configuração não aparece no computador dessa usuária. Acho que o windows é bem diferente. Quando clico com o botão direito do mouse no canto superior esquerdo da tela, aparece uma tela de configuração bem mais complexa, e não tem essas opções.
Inacio de Carvalho Neto
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Dúvida com SetMode
Deveria ter resolvido, a menos que esteja forçando compilação console.
Se alterar tamanho de letras nessas propriedades, as letras do aplicativo se alteram ?
Se alterar, está compilando como console, e não gui, e terá que descobrir o porque.
Se alterar tamanho de letras nessas propriedades, as letras do aplicativo se alteram ?
Se alterar, está compilando como console, e não gui, e terá que descobrir o porque.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- mauricioportela
- Usuário Nível 2

- Mensagens: 95
- Registrado em: 29 Jul 2016 04:22
- Localização: Vitoria da Conquista/Bahia
Dúvida com SetMode
Boa noite!
tenta isso:
Compile: hbmk2 teste.prg -gui
Att.
Mauricio Portela
tenta isso:
Compile: hbmk2 teste.prg -gui
Código: Selecionar todos
#include "box.ch"
#include "inkey.ch"
#define TRUE .T.
#define FALSE .F.
#command @ <row>, <col> MOSTRA <strt> [IF <exp> ELSE <strf>] [COLOR <cor>];
=> ;
devpos(<row>, <col>); devout(IIF(<exp>, <strt>, <strf>) [, <cor>])
FUNCTION Main()
LOCAL x, nContador, nLinhas, nColunas
SETCOLOR("B/W+*")
x := TRUE
nContador := 1
WHILE TRUE
SetMode(IIF(x,25,43),80)
nLinhas := MaxRow()
nColunas := MaxCol()
cLinhas := STRZERO(nLinhas +1, 2)
cColunas := STRZERO(nColunas +1, 2)
@ 00, 00, nLinhas -1, nColunas -1 BOX B_SINGLE + SPACE(1)
@ 00, 02 SAY "<Modo de Video: " + cLinhas + "x" + cColunas + ">"
@ 01, 02 SAY "Contador: " + STRZERO(nContador,3) COLOR "R/W+*"
@ 02, 02 SAY "Modo Ativo:"
@ 03, 02 MOSTRA "25x80" IF x ELSE "43x80" COLOR "R/W+*"
@ nLinhas -1, 02 SAY "[ESC] Sair"
x := !x
nContador++
INKEY(2)
IF LASTKEY() == K_ESC
EXIT
ENDIF
ENDDO
RETURN Nil
Mauricio Portela
