Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Скидка до 20% на услуги дата-центра. Аренда серверной стойки. Colocation от 1U!

Миграция в облако #SotelCloud. Виртуальный сервер в облаке. Выбрать конфигурацию на сайте!

Виртуальная АТС для вашего бизнеса. Приветственные бонусы для новых клиентов!

Виртуальные VPS серверы в РФ и ЕС

Dedicated серверы в РФ и ЕС

По промокоду CITFORUM скидка 30% на заказ VPS\VDS

VPS/VDS серверы. 30 локаций на выбор

Серверы VPS/VDS с большим диском

Хорошие условия для реселлеров

Надежные VPS и выделенные серверы в Нидерландах

Storage VPS, High CPU VPS

Профессиональная техническая поддержка

Домены, SSL сертификаты, VPN

Глава 5. Немного развлечемся.

Начинается демонстрация нового компьютера, управляемого
голосом. Изобретатель просит зал соблюдать тишину. Только
он открывает рот - из зала крик:
- FORMAT C:!!! ENTER!!!

На тему форматирования диска С существует огромное количество шуток. Давайте напишем программу, которая будет представлять собой одну из них. Идея - не моя; где-то когда-то я услышал ее. Выглядеть конечный результат будет примерно так - пользователь запускает нашу программу - нажимает на ней кнопку - и программа делает вид, что форматирует диск С:, не реагируя при этом на судорожные движения пользователя. Естественно, при создании шутки мы изучим новые элементы С++, а именно - текстовые поля, вывод в них текста, создание индикатора и его изменение с течением времени, а следовательно, и один из способов создания таймера. Также мы научимся изменять внешний вид курсора - на известные всем "часики". Поговорим мы также о типах переменных и познакомимся с оператором цикла.

Итак, вернемся к нашему проекту - "2000.ide". Зайдем в редактор ресурсов, щелкнув на файле "2000app.rc", и откроем окно редактирования нашей картинки "IDD_CLIENT (2000)". Перетащим нашу кнопку на самый верх окна программы. Затем на панели "Controls" щелкнем на кнопке с большой буквой "А" и нарисуем на нашей программе прямоугольник под кнопкой - см.рис.5.1.

Рисунок 5.1. Создание элемента статического текста.

Если Вы уже прочитали подпись под рисунком 5.1, то поняли, что этот элемент называется "статическим текстом". По смыслу названия - это текст, который не изменяется, в отличие от редактируемого текста. И используется обычно статический текст для надписей, которые существуют на программе все время. Но изменить его не может пользователь, запускающий программу, а мы - изнутри программы - в принципе, можем менять этот текст. Чем мы и займемся. Но сначала, зайдя в "Properties" этого элемента (напоминаю в последний раз - щелкнув на нем правой кнопкой и выбрав соответствующий пункт в появившемся меню), удалим слово "Text1" - у нас сначала в этом элементе ничего не будет.

Теперь для того, чтобы легко заставлять программу писать на этом месте разные хорошие слова, поставим в соответствие этому элементу некую переменную. Для этого, вызвав правой кнопкой меню, выберем уже известный нам "ClassExpert". Выделенным окажется пункт IDC_STATICTEXT; щелкнем на нем правой кнопкой - появится маленькое меню - в нем нас интересует пункт "Add instance variable" - "добавить переменную" - см.рис.5.2.

Рисунок 5.2. Связь статического текста с переменной.

В качестве имени переменной возьмем, например, "mytext1" - см.рис.5.3.

Рисунок 5.3. Присвоение имени переменной.

Вернемся в редактор ресурсов и выберем в панели "Controls" ярлычок "Common". Нажмем на кнопке. Это - "индикатор процесса" - ну, вы, наверное, понимаете по названию и по картинке на кнопке, о чем идет речь. Создадим прямоугольничек на нашей программе сразу под текстовым элементом - см.рис.5.4.

Рисунок 5.4. Создание индикатора процесса.

Кстати, наш статический текст будет сейчас "невидим" - поскольку в нем сейчас ничего нет. Вызовем для индикатора "ClassExpert" и присвоим нашему новому элементу IDC_PROGRESSBAR1 переменную "bar1". Закроем "ClassExpert" и редактор ресурсов и вернемся в наш проект.

Задачка для самостоятельного решения - найдите все изменения, которые "ClassExpert" внес в файлы проекта. Попробуйте сами, а потом переходите на следующую страницу и прочитайте правильный ответ.

Галявов И.Р. e-mail: cborland@mail.ru

Назад | Содержание

 

Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

Спринтхост — хостинг от 99 ₽ в месяц

Бесподобная поддержка, тестовый период 30 дней и домены от 149 ₽

Промокод на 30% кешбэк — CITFORUM

VPS в России, Европе и США

Бесплатная поддержка и администрирование

Оплата российскими и международными картами

🔥 VPS до 5.7 ГГц под любые задачи с AntiDDoS в 7 локациях

💸 Гифткод CITFORUM (250р на баланс) и попробуйте уже сейчас!

🛒 Скидка 15% на первый платеж (в течение 24ч)

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 7861149
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...