Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
Gepar
1177 / 533 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
#1

Текстовый режим и мигающий текст - C++

02.11.2013, 14:44. Просмотров 1956. Ответов 13
Метки нет (Все метки)

В коем то веке понадобилось продемонстрировать работу в текстовом режиме для лабораторной в университете, кто изучал с++ ещё в 90х небось в курсе как это делается, подскажите пожалуйста.
Заставить мигать текст пытаюсь через борланд с++ установленный в DOS.
Вызовы textMode из graphics.h визуально ничего не меняют
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
   textmode(BW40);
   cprintf("ABC");
   getch();
   textmode(C40);
   cprintf("ABC");
   getch();
   textmode(BW80);
   cprintf("ABC");
   getch();
   textmode(C80);
   cprintf("ABC");
   getch();
   textmode(MONO);
   cprintf("ABC");
   getch();
Попытки заставить мигать текст через те же борландовские функции тоже ничего не меняют визуально
C++
1
2
textColor(WHITE + BLINK);
textAttr(128+10);
Как же это всё правильно сделать-то ?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.11.2013, 14:44
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Текстовый режим и мигающий текст (C++):

ГОСТ 28147-89 Режим простой замены. Исходный текст не совпадает с дешифрованным - C++
Добрый вечер, уважаемы форумчане. Решил реализовать шифр ГОСТ 28147-89 Режим простой замены. Алгоритм шифрования взял с википедии....

Текстовый редактор. Зашифровать текст. - C++
подскажите пожалуйста не пойму что надо сделать??? "файл должен храниться в зашифрованном виде: над каждым симво-лом файла произвести...

Текст из одного файла перенести в другой текстовый файл - C++
текст из одного файла перенести в другой текстовый файл, кто может напишите листинг программы чтоб выполняло это условие заранее спасибо

Где должен быть текстовый файл, чтобы программа читала с него текст - C++
Вот куда мне поместить файл "input.txt" чтобы прога читала с него текст? int Length() { ifstream f("input.txt"); //создание...

Как скопировать текст с консоли (например, то, что вывела программа или ipcоnfig) в текстовый файл? - C++
Заключается все в том что надо скопировать например :( (что вывела программа или ipcоnfig к примеру ) и потом записать в файл. Как...

мигающий курсор - C++
В CODEBLOCS в окне набора текста программы появился мигающий курсор "_", а раньше был курсор "|". И редактирование текста поменялось....

13
MrCold
855 / 753 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
02.11.2013, 14:55 #2
Gepar, не оно ? Может поможет
Мерцающая надпись (графика)
1
Max Dark
шКодер самоучка
1851 / 1651 / 603
Регистрация: 09.10.2013
Сообщений: 3,678
Записей в блоге: 6
Завершенные тесты: 2
02.11.2013, 15:00 #3
У борланда помнится было чтото про blinck в <conio.h>
Давно было...
Там еще окна вывода можно было задавать...
И спикером бибикать..
Ностальгия... (*утирает слезу*)
1
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
02.11.2013, 15:22 #4
Вывод цветных символов
http://www.cyberforum.ru/cpp-beginners/thread693283.html#post3675791
1
gazlan
3133 / 1909 / 285
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
02.11.2013, 15:48 #5
Это зависит от установки BLINK-бита. По умолчанию, вместо мерцающего текста, выводится утолщенный.

VIDEO - TOGGLE INTENSITY/BLINKING BIT (Jr, PS, TANDY 1000, EGA, VGA)

Re: Подсветить идентификаторы с файла
1
Gepar
1177 / 533 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
02.11.2013, 15:57  [ТС] #6
Цитата Сообщение от gazlan Посмотреть сообщение
Это зависит от установки BLINK-бита.
Да это я понимаю, другое дело как посредством функций борланда это сделать То что я пробовал никакого эффекта не давало.
Там ещё задание сделать бегущую строку, это видимо подразумевают чистить экран и показывать в другой точке текст посредством борландовских функций graphics.h ... или он не умеет писать текст в указанную позицию не в vga режиме?
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
02.11.2013, 16:05 #7
Цитата Сообщение от Gepar Посмотреть сообщение
или он не умеет писать текст в указанную позицию не в vga режиме?
Ну на счет борландовских функций не знаю, но
Есть ли какие то статьи про графику в DOS?
Задача с выводом в командную строку
Вывести фигуру звездочками
0
gng
645 / 491 / 133
Регистрация: 08.09.2013
Сообщений: 1,326
02.11.2013, 16:16 #8
Esc последовательность на терминал: Esc [ 5 m
Или в Си: printf ("\E5m");
Только не все виртуальные терминалы поддерживают мерцание, в отличие от цветов и подчеркивания.
Досовский терминал, насколько я помню, поддерживал.
Борландовские терминальные функции делают то же самое, поскольку другого способа общения с терминалами не существует. Можно только минуя терминал писать в видеопамять, но программа сразу утратит универсальность.
0
Gepar
1177 / 533 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
02.11.2013, 16:27  [ТС] #9
Цитата Сообщение от gng Посмотреть сообщение
Можно только минуя терминал писать в видеопамять, но программа сразу утратит универсальность.
А как это сделать?
О универсальности и речи быть не может, мне не нужен опыт написания универсальных программ в текстовом режиме, думаю я обойдусь без этого опыта.
0
Max Dark
шКодер самоучка
1851 / 1651 / 603
Регистрация: 09.10.2013
Сообщений: 3,678
Записей в блоге: 6
Завершенные тесты: 2
02.11.2013, 16:31 #10
Цитата Сообщение от Gepar Посмотреть сообщение
А как это сделать?
О универсальности и речи быть не может, мне не нужен опыт написания универсальных программ в текстовом режиме, думаю я обойдусь без этого опыта.
Поищите Фаронов Turbo Pascal часть 2
Я помнится без особого труда на Turbo C примеры от туда переписывал
0
gng
645 / 491 / 133
Регистрация: 08.09.2013
Сообщений: 1,326
02.11.2013, 20:34 #11
Цитата Сообщение от Gepar Посмотреть сообщение
А как это сделать?
О универсальности и речи быть не может, мне не нужен опыт написания универсальных программ в текстовом режиме, думаю я обойдусь без этого опыта.
Если программа запущена в чистом досе, то вышеприведенный пример должен сработать.
C
1
printf ("\E1;4;5;34;mHello...");
выводит жирный подчеркнутый текст голубого цвета, но не мигающий
Перевожу свой виртуальный терминал в текстовый режим видеоадаптера 80x25
и мигание появилось )))

Писать в видеопамять в чистом досе тоже просто.
Текстовая страница находится по адресу B800:0000 (реальный режим процессора).
Каждый символ занимает 2 байта - код символа и аттрибуты. Счет с левого верхнего угла.

Добавлено через 2 часа 54 минуты
Исправление (забыл поставить '[' в последовательности)
C
1
printf ("\E[1;4;5;34;mHello...");
Добавлено через 16 секунд
Исправление (забыл поставить '[' в последовательности)
C
1
printf ("\E[1;4;5;34;mHello...");
Добавлено через 48 минут
И еще раз извиняюсь. Понадеялся на память, вместо того, чтобы скопипастить
C
1
printf ("\E[1;4;5;34mHello...");
\E начало, m - конец последовательности
1 - жирный шрифт
4 - подчеркивание
5 - мигание
34 - голубой цвет
Мигание работает только в реально текстовом режиме.
0
gazlan
3133 / 1909 / 285
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
02.11.2013, 21:24 #12
Цитата Сообщение от Gepar Посмотреть сообщение
Да это я понимаю, другое дело как посредством функций борланда это сделать
Видимо, не понимаете. Речь идет не о "функциях Борланда", а о смене видеорежима. Сделать это можно через asm-вставку (проще всего) или псевдопеременные REGS и вызов int86().
1
Gepar
1177 / 533 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
04.11.2013, 22:43  [ТС] #13
Цитата Сообщение от gazlan Посмотреть сообщение
Сделать это можно через asm-вставку (проще всего)
так а что у того же борланда нет какой-то процедуры с этой asm вставкой?
0
gazlan
3133 / 1909 / 285
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
04.11.2013, 22:56 #14
Есть:
Цитата Сообщение от gazlan Посмотреть сообщение
или псевдопеременные REGS и вызов int86()
0
04.11.2013, 22:56
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.11.2013, 22:56
Привет! Вот еще темы с ответами:

дан текстовый файл.определить количество нечетных чисел и записать их в др текст файл - C++
Очень Простая задача

Рисовать мигающий курсор на виджете с данной частотой - C++
Требуется рисовать мигающий курсор на виджете. Причем делать это нужно с постоянной частотой. Если кто знает не костыльный способ...

Дан текстовый файл f. Переписать текст в файл g, удалив все группы букв s (s передается параметром) - C++
В общем нужно из строки удалить подстроку, которая задается с клавиатуры

Дан текстовый файл.текст. числа, разделённые пробелами. Найти количество положительных чисел. Удалить строку с min количеством чисел (на С) - C++
Дан текстовый файл, состоящий из одной или нескольких строк. Каждая строка файла содержит числа, разделенные пробелами. Найти количество...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru