На главную

On-line справка по Win32 API

Написать письмо
БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО!
Список всех статей A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z | Скачать Вниз

Low-Level Console Output Functions



The low-level console output functions provide direct access to the character cells of a screen buffer. One set of functions reads from or writes to consecutive cells beginning at any location in the screen buffer. Another set of functions reads from or writes to rectangular blocks of cells.

The following functions read from or write to a specified number of consecutive character cells in a screen buffer, beginning with a specified cell.

Function Description
ReadConsoleOutputCharacter
Copies a string of Unicode or ANSI characters from a screen buffer.
WriteConsoleOutputCharacter
Writes a string of Unicode or ANSI characters to a screen buffer.
ReadConsoleOutputAttribute
Copies a string of text and background color attributes from a screen buffer.
WriteConsoleOutputAttribute
Writes a string of text and background color attributes to a screen buffer.
FillConsoleOutputCharacter
Writes a single Unicode or ANSI character to a specified number of consecutive cells in a screen buffer.
FillConsoleOutputAttribute
Writes a text and background color attribute combination to a specified number of consecutive cells in a screen buffer.


For all of these functions, when the last cell of a row is encountered, reading or writing wraps around to the first cell of the next row. When the end of the last row of the screen buffer is encountered, the write functions discard all unwritten characters or attributes, and the read functions report the number of characters or attributes actually written..
The following functions read from or write to rectangular blocks of character cells at a specified location in a screen buffer.

Function Description
ReadConsoleOutput
Copies character and color data from a specified block of screen buffer cells into a given block in a destination buffer.
WriteConsoleOutput
Writes character and color data to a specified block of screen buffer cells from a given block in a source buffer.


These functions treat screen buffers and source or destination buffers as two-dimensional arrays of CHAR_INFO structures (containing character and color attribute data for each cell). The functions specify the width and height, in character cells, of the source or destination buffer, and the pointer to the buffer is treated as a pointer to the origin cell (0,0) of the two-dimensional array. The functions use a SMALL_RECT structure to specify which rectangle to access in the screen buffer, and the coordinates of the upper left cell in the source or destination buffer determine the location of the corresponding rectangle in that buffer.

These functions automatically clip the specified screen buffer rectangle to fit within the boundaries of the screen buffer. For example, if the rectangle specifies lower right coordinates that are (column 100, row 50) and the screen buffer is only 80 columns wide, the coordinates are clipped so that they are (column 79, row 50). Similarly, this adjusted rectangle is again clipped to fit within the boundaries of the source or destination buffer. The screen buffer coordinates of the actual rectangle that was read from or written to are specified. For an example that uses these functions, see Reading and Writing Blocks of Characters and Attributes.

The illustration shows a ReadConsoleOutput operation where clipping occurs when the block is read from the screen buffer, and again when the block is copied into the destination buffer. The function reports the actual screen buffer rectangle that it copied from.



Пригласи друзей и счет твоего мобильника всегда будет положительным!
Предыдущая статья
 
Сайт Народ.Ру Интернет
Следующая статья
Пригласи друзей и счет твоего мобильника всегда будет положительным!

КОНСОЛЬНЫЙ Выход Low-Level Функционирует



Консольные выходные функции низкого уровня обеспечивают прямой доступ к символьным ячейкам экранного буфера. Один установленное функций читается из или пишется в последовательные ячейки, начинаемые в любой позиции в экранном буфере. Другое установленное функций читается из или пишется прямоугольным блокам ячеек.

Следующее функций было прочитано от или записи до определенный количество последовательный символьный ячейки в экранный буфер, начинающей с определенной ячейки.

Функция Description ReadConsoleOutputCharacter
Копирует строку Уникода или символов ANSI из экранного буфера.
WriteConsoleOutputCharacter
Пишет строку Уникода или символов ANSI в экранный буфер.
ReadConsoleOutputAttribute
Копирует строку текста и цвет фона приписывается из экранного буфера.
WriteConsoleOutputAttribute
Пишет строку текста и цвет фона приписывает к экранному буферу.
FillConsoleOutputCharacter
Пишет единственный Уникод или символ ANSI в определенное количество последовательных ячеек в экранном буфере.
FillConsoleOutputAttribute
Пишет текст и цвет фона вспомогательной комбинации в определенное количество последовательных ячеек в экранном буфере.


Для всех этих функций, когда последняя ячейка колонки столкнулась с, чтение или сочинение сворачивается в первую ячейку следующей колонки. Когда конец последней колонки экранного буфера столкнулся с, писать функции отвергают все неписаные символы или атрибуты, и функции чтения сообщают количество символов или действительно written. атрибутов.
Следующее функций было прочитано от или записи до прямоугольных блоков символьных ячеек в определенной позиции в экранном буфере.

Функция Description ReadConsoleOutput
Копии символьные и цветные данные из определенного блока экранных буферных ячеек в данный блока в буфере расположения.
WriteConsoleOutput
Записывает символ и окрашивает данные определенному блоку экранных буферных ячеек из данного блока в исходном буфере.


Эти функции рассматривают экранные буферы и источник или буферы расположения как двумерные подготавливается структур CHAR_INFO (содержание символьные и цветные вспомогательные данные для каждой ячейки). Функции определяют ширину и высоту, в символьных ячейках, исходного или буфера расположения, и указатель в буфер рассмотрен как указатель в ячейку (0,0) начала двумерного массива. Функции используют структуру SMALL_RECT, чтобы определять какой прямоугольник, чтобы иметь доступ в экранном буфере, и координатах верхней левой ячейки в источнике или буфер расположения определяет позицию соответствующего прямоугольника в этом буфере.

Эти функции автоматически вырезают определенный экранный буферный прямоугольник, чтобы устанавливаться в пределах границ экранного буфера. Например, если прямоугольник определяет правые нижние координаты, которые - (столбец 100, колонка 50) и экранный буфер - только 80 столбцов широких, координаты вырезаны чтобы они - (столбец 79, колонка 50). Аналогично, этот скорректированный прямоугольник снова вырезан, чтобы устанавливаться в пределах границ исходного или буфера расположения. Экранные буферные координаты фактического прямоугольника, который был прочитан из или записанное, чтобы определенн. Для примера, который использует эти функции, смотри Чтение и Пиша Блоков Символов и Атрибутов.

Иллюстрация показывает операцию ReadConsoleOutput где отсечение происходит когда блок прочитан из экранного буфера, и снова когда блок скопирован в буфер расположения. Функция сообщает фактический экранный буферный прямоугольник, что она скопирована из.



Вверх Version 1.3, Oct 26 2010 © 2007, 2010, mrhx Вверх
 mrhx software  Русский перевод OpenGL  Русский перевод Win32 API
 
Используются технологии uCoz