зеркало из https://github.com/github/ruby.git
CONSOLE_SCREEN_BUFFER_INFO is 22bytes
typedef struct _CONSOLE_SCREEN_BUFFER_INFO { COORD dwSize; // 4(SHORT X, Y) COORD dwCursorPosition; // 4 WORD wAttributes; // 2 SMALL_RECT srWindow; // 8(SHORT Left, Top, Right, Bottom) COORD dwMaximumWindowSize; // 4 } CONSOLE_SCREEN_BUFFER_INFO;
This commit is contained in:
Родитель
a4a19b114b
Коммит
b74dd665c0
|
@ -122,13 +122,13 @@ class Reline::Windows
|
|||
end
|
||||
|
||||
def self.get_screen_size
|
||||
csbi = 0.chr * 24
|
||||
csbi = 0.chr * 22
|
||||
@@GetConsoleScreenBufferInfo.call(@@hConsoleHandle, csbi)
|
||||
csbi[0, 4].unpack('SS').reverse
|
||||
end
|
||||
|
||||
def self.cursor_pos
|
||||
csbi = 0.chr * 24
|
||||
csbi = 0.chr * 22
|
||||
@@GetConsoleScreenBufferInfo.call(@@hConsoleHandle, csbi)
|
||||
x = csbi[4, 2].unpack('s*').first
|
||||
y = csbi[6, 4].unpack('s*').first
|
||||
|
|
Загрузка…
Ссылка в новой задаче