Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Работа со строками в Windows. Изменение цвета и фона строки текста




Особенности работы с логическим инструментом. Пример отображения в окне прямоугольника заданного размера, толщины и цвета.

Используя функции API, нарисовать красный прямоугольник с толщиной линии в 30 пикселей. DimPenAsLong, OldPenAsLongConstLightRed= &HFF' Идентификатора цвета PrivateSubCommand1_Click() DimhDcAsLonghDc= GetDC (Form1.hWnd)'Получаем дескриптор контекста формы 'Создаем сплошное перо красногоцвета' шириной 30 пикселей Pen= CreatePen (ps_Solid, 30, LightRed)'vbRed' Вставляем перо в контексте OldPen= SelectObject (hDc, Pen)'Pисуем прямоугольник Call Rectangle (hDc, 30, 30, 300, 200)

Call SelectObject (hDc, OldPen)'Восстанавливаем контекст Call DeleteObject (Pen) 'Удаляем нестандартное перо'Освобождаем контекст окна Call ReleaseDC (hWnd, hDc) EndSubPrivateSubForm_Load() Caption= "Пример использования контекста"Command1.Caption = "Rectangle"BackColor= &HFFFFFF'Белый цвет фона окна EndSub


 

Для работы со строками и файлами в Windows существуют свои функции. Однако чаще всего приходится работать со строками, поэтому уделим внимание API-функциям, выводящим текстовую информацию на экран. Для этой цели обычно пользуются функциями TextOut и DrawText. Кроме них есть функция ExtTextOut, которая используется при нестандартном межсимвольном расстоянии в тексте, и функция TabbedTextOut, выводящая текст, содержащий символы табуляции. Когда необходимо вывести строку текста в заданной опорной точке графического устройства, то используют функцию

TextOut (ByValhDcAsLong, ByValx AsLong, ByValy AsLong, ByVallpStringAsString, ByValnCount_AsLong) AsLong,где x, y —координаты начала текста(опорной точки), lpString-строка текста, nCount-количество выводимых символов. По умолчанию текст располагается так, чтобы опорная точка совпадала с левой верхней точкой прямоугольника, куда помещается текст, при этом высота прямоугольника равна высоте символов шрифта, а длина-длине текста.Местоположение опорной точки можно менять с помощью функции SetTextAlign (ByValhdcAsLong, ByValwFlagsAsLong) AsLong

Для изменения цвета фона области прямоугольника и цвета символов текста необходимо перед вызовом рассмотренных функций обратиться к функции измения цвета фона: SetBkColor (ByValhdcAsLong,ByValcrColorAsLong)AsLong и изменения цвета символов

SetTextColor (ByValhdcAsLong, ByValcrColorAsLong) AsLong,гдеcrColor- цвет фона(символов), который устанавливается функцией RGB или шестнадцатеричной константой. Последняя функция позволяет сохранить старое значение цвета для возможного восстановления. Например, OldColor:= SetTextColor(MyDC, RGB (50,50,50))'Меняем цвет' *** Работасоцветом*** SetTextColor (MyDC, OldColor) 'Восстанавливаем цвет В Windows существуют два режима закраски фона текста: Transparent=1иOpaque=2(по умолчанию). В

Первом случае фон прямоугольника с налагаемым текстом не перерисовывается (при этом старая информация будет просвечивать сквозь налагаемую на нее новую информацию), а во втором-фон перерисовывается и старая информация закрашивается цветом фона прямоугольника с новой информацией. Установить режим закраски фона можно функцией SetBkMode (ByValhdcAsLong, ByValnBkModeAsLong) AsLong Определить текущий режим можно функцией GetBkMode.





Поделиться с друзьями:


Дата добавления: 2014-12-23; Просмотров: 449; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.