[python] Rozměry textového okna
zu1234
zu1234 na seznam.cz
Pondělí Březen 17 12:34:18 CET 2008
Děkuji Vám, jdu studovat.
ZU
Michal Molhanec napsal(a):
> zu1234 napsal(a):
>> Zdravím.
>>
>> Potřebuji přerušovat zobrazení delšího textu:
>> Kde by si mohl python program bežící pod windows-y v textovém okně
>> zjistit jeho (aktuální) rozměny (počet řádků s sloupců)?
>
> Pro Python s ctypes (od Pythonu 2.5 soucast standardni knihovny):
>
> def getConsoleWindowSize():
> """Return size of the console window on Windows as
> a tuple (width, height) or (None, None) if ctypes
> are not available or some error happens."""
> try:
> import ctypes
>
> class COORD(ctypes.Structure):
> _fields_ = [("x", ctypes.c_short),
> ("y", ctypes.c_short)]
>
> class SMALL_RECT(ctypes.Structure):
> _fields_ = [("l", ctypes.c_short),
> ("t", ctypes.c_short),
> ("r", ctypes.c_short),
> ("b", ctypes.c_short)]
>
> class CONSOLE_SCREEN_BUFFER_INFO(ctypes.Structure):
> _fields_ = [("size", COORD),
> ("cursorPosition", COORD),
> ("attrs", ctypes.c_ushort),
> ("win", SMALL_RECT),
> ("maxWinSize", COORD)]
>
> info = CONSOLE_SCREEN_BUFFER_INFO()
>
> handle = ctypes.windll.kernel32.GetStdHandle(-11)
> ctypes.windll.kernel32.GetConsoleScreenBufferInfo(handle,
> ctypes.byref(info))
> return (info.win.r - info.win.l + 1,
> info.win.b - info.win.t + 1)
> except:
> return (None, None)
>
> print getConsoleWindowSize()
> _______________________________________________
> Python mailing list
> Python na py.cz
> http://www.py.cz/mailman/listinfo/python
>
Další informace o konferenci Python