PureBoard
http://forums.purebasic.com/german/

Konsolenfenster
http://forums.purebasic.com/german/viewtopic.php?f=3&t=31654
Seite 1 von 1

Autor:  Sylvia [ 10.09.2019 12:47 ]
Betreff des Beitrags:  Konsolenfenster

Seit längerem stört mich die mickrige Größe des Konsolenfensters auf einem 4k-Monitor. Lässt sich das Konsolenfenster rein optisch irgendwie vergrößern (z.B.auf die doppelte Größe)?

Autor:  RSBasic [ 10.09.2019 12:51 ]
Betreff des Beitrags:  Re: Konsolenfenster

Damit kannst du die Größe ändern:
Code:
EnableExplicit

ImportC "msvcrt.lib"
  system(cmd.p-ascii)
EndImport

If OpenConsole("Meine Konsole")
  system("mode 200,60")
 
  Input()
 
  CloseConsole()
EndIf

(nur Windows)

Autor:  Sylvia [ 10.09.2019 17:06 ]
Betreff des Beitrags:  Re: Konsolenfenster

Danke, RSBasic.

Das meinte ich aber nicht. Ich möchte es einfach "zoomen" irgendwie, so dass die Darstellung grösser wird

Autor:  RSBasic [ 10.09.2019 17:16 ]
Betreff des Beitrags:  Re: Konsolenfenster

Wenn DPI aktiviert ist und auf deinem Monitor genutzt wird (z.B. 200 %), sollte es ausreichen und wird von Windows automatisch skaliert.
Aber nur das Konsolenfenster zu vergrößern, ist mir keine Lösung bekannt. Aber ich stelle gerade fest, dass man unter Windows 10 mit Strg+Scrollrad den Inhalt des Konsolenfensters vergrößern kann. Das ist mir neu. Ich weiß aber gerade nicht, ob es eine WinAPI-Funktion gibt, um den Zoom-Wert festzulegen.
Alternatv könnte man mit mouse_event_() das Scrollen simulieren:
Code:
EnableExplicit

Define a

If OpenConsole("Meine Konsole")
  keybd_event_(#VK_CONTROL, #Null, #Null, #Null)
  For a=1 To 20
    mouse_event_(#MOUSEEVENTF_WHEEL, 0, 0, #WHEEL_DELTA, 0)
  Next
  keybd_event_(#VK_CONTROL, #Null, #KEYEVENTF_KEYUP, #Null)
  Input()
 
  CloseConsole()
EndIf

Das würde ich aber nur als letzte Lösung nutzen, wenn keine andere Möglichkeit gibt.

Autor:  mk-soft [ 11.09.2019 00:40 ]
Betreff des Beitrags:  Re: Konsolenfenster

Anderen Zeichensatz wählen, Oben links...

Windows merk sich die Einstellung für das Konsolen-Fenster.

Autor:  Mijikai [ 11.09.2019 15:24 ]
Betreff des Beitrags:  Re: Konsolenfenster

Es gibt eine Funktion um die Font zu ändern SetConsoleFont() (kernel32) eventuell geht es damit.

Autor:  RSBasic [ 11.09.2019 15:50 ]
Betreff des Beitrags:  Re: Konsolenfenster

Hier ein Beispielcode: https://www.purebasic.fr/english/viewto ... 74#p462074
Unter Windows bekomme ich aber:
PureBasic - Linker error hat geschrieben:
POLINK: error: Unresolved external symbol 'GetNumberOfConsoleFonts'.

POLINK: error: Unresolved external symbol 'SetConsoleFont'.

POLINK: fatal error: 2 unresolved external(s).

Autor:  Sylvia [ 11.09.2019 16:59 ]
Betreff des Beitrags:  Re: Konsolenfenster

Danke euch allen! Wieder was dazugelernt!

@mk-soft:
Bullseye!! DAS war's ! :allright:

Autor:  Mijikai [ 11.09.2019 18:59 ]
Betreff des Beitrags:  Re: Konsolenfenster

Habs mal getestet:
Code:
EnableExplicit

Import "kernel32.Lib"
  SetCurrentConsoleFontEx.i(hOut.i,bMaximumWindow.b,*lpConsoleCurrentFontEx)
EndImport

Structure CONSOLE_FONT_INFOEX
  cbSize.l
  nFont.l
  dwFontSize.COORD
  FontFamily.l
  FontWeight.l
  FaceName.u[#LF_FACESIZE]
EndStructure


Global cfi.CONSOLE_FONT_INFOEX

OpenConsole()

With cfi.CONSOLE_FONT_INFOEX
  \cbSize = SizeOf(CONSOLE_FONT_INFOEX)
  \dwFontSize\X = 0
  \dwFontSize\Y = 48
  \FontWeight = #FW_BOLD
EndWith

PokeS(@cfi\FaceName, "Lucida Console", -1, #PB_Unicode)

SetCurrentConsoleFontEx(GetStdHandle_(#STD_OUTPUT_HANDLE), 1, @cfi)
PrintN("The quick brown fox jumped over the lazy dog.")
Input()

CloseLibrary(0)
End

Autor:  RSBasic [ 11.09.2019 19:05 ]
Betreff des Beitrags:  Re: Konsolenfenster

:allright:

Seite 1 von 1 Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/