Форум программистов, компьютерный форум CyberForum.ru

[ С++ ] Изменить шрифт в консольном приложение ( программно ) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Реализация алгоритма find_firdt_not_of через другие алгоритмы http://www.cyberforum.ru/cpp-beginners/thread337817.html
Хотел создать эту тему в разделе С/С++ для экспертов, но мне было отказано в виду отсутствия неких прав. Поэтому формулирую тему здесь. Есть стандартный алгоритм std::find_first_of. Но нет стандартного алгоритма std::find_first_not_of. Надо предполагать, что авторы стандарта его не включили по тем соображениям, что его легко реализовать с помощью других алгоритмов. Поэтому меня интересует,...
C++ String to LPCSTR проблема такая (vc++ 2005) error C2664: 'CreateFileA' : cannot convert parameter 1 from 'System::String ^' to 'LPCSTR' поиск в гоогл непамог ... String^ str = comboBoxCOMNAME->Text; hCom = CreateFile(str, GENERIC_READ | GENERIC_WRITE,0,NULL,OPEN_EXISTING,0,NULL); ... http://www.cyberforum.ru/cpp-beginners/thread337804.html
C++ Посоветуйте новичку в С++
Здравствуйте! После школьной программы знаком с основами Паскаля, Делфи. Скоро поступлю в ВУЗ. Скорей всего буду изучать там С++. Решил немного подготовиться. Скачал книгу Либерти (21 день). Сейчас остановился на девятом дне. "Прошел" указатели и ссылки. Возникают большие трудности при использовании указателей и ссылок в классах. Утечки, нулевые объекты, мины замедленного действия, одним...
Преобразование строки в double C++
Собственно есть код: #include <iostream> #include <iomanip> using namespace std; double atof(const char *nPtr) {
C++ Как сделать так, чтобы программа понимала русские буквы? http://www.cyberforum.ru/cpp-beginners/thread337779.html
И если знаете как убрать этот огромный массив символов "char mass2" на chr виснет все... Так вот код программы. Мне нужно чтобы она выводила статистику по русским символам правильно... а то выводит не то совсем. Подскажите пожалуйста. #include <iostream> // подключаем библиотеку ввода, вывода #include <conio.h> // для задержки экрана #include <locale.h>
C++ Интернет и С++ Здраствуйте. Посоветуйте книги, статьи по сетевому программированию на С++, хочу понять саму систему, как там все должно быть устроено, т. е. что бы обьяснялся не сам инструментарий. Спасибо. подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
01.08.2011, 09:35     [ С++ ] Изменить шрифт в консольном приложение ( программно )
вобще на всех форумах пишут что недокументированное лучше не юзать, но вот как вариант русский для Висты, взял от сюда [ссылка удалена]
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include <iostream>
#include <windows.h>
using namespace std;
 
typedef struct _CONSOLE_FONT_INFOEX {
  ULONG cbSize;
  DWORD nFont;
  COORD dwFontSize;
  UINT  FontFamily;
  UINT  FontWeight;
  WCHAR FaceName[LF_FACESIZE];
} CONSOLE_FONT_INFOEX, *PCONSOLE_FONT_INFOEX;
 
typedef BOOL (WINAPI *SETCONSOLEFONT)(HANDLE, DWORD);     // прототип недокументированый функции для XP
 
typedef BOOL (WINAPI *SETCURRENTCONSOLEFONTEX)(HANDLE,BOOL, PCONSOLE_FONT_INFOEX);  // для vista
SETCURRENTCONSOLEFONTEX SetCurrentConsoleFontEx  ;
SETCONSOLEFONT SetConsoleFont;
 
int main(int argc, char* argv[])
{
  OSVERSIONINFOEX osvi;
  CONSOLE_FONT_INFOEX cfon;
  ZeroMemory(&osvi, sizeof(OSVERSIONINFOEX));
  osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX);
  GetVersionEx((OSVERSIONINFO *) &osvi) ;   // получение версии винды
  HMODULE hmod = GetModuleHandleA("KERNEL32.DLL");     // функции здесь
  if (osvi.dwMajorVersion<6) {     // xp или ниже : для 9x не проверял.
     SetConsoleFont =(SETCONSOLEFONT) GetProcAddress(hmod, "SetConsoleFont");   // берем  адрес функции
     if (!SetConsoleFont) {cout<<"error\n" ; exit(1);}   //   если ошибка
     SetConsoleFont(GetStdHandle(STD_OUTPUT_HANDLE),10);  // устанавливаем 10 шрифт..
    //эксперементально установил что в обычной XP  это Lucida  Console 14.
    //хз везде это ли - покажет практика.
 
  }  else
  {
     SetCurrentConsoleFontEx =(SETCURRENTCONSOLEFONTEX) GetProcAddress(hmod, "SetCurrentConsoleFontEx");   // берем  адрес  функции
     if (!SetCurrentConsoleFontEx) {cout<<"error\n" ; exit(1);}   //   если ошибка
     ZeroMemory(&cfon, sizeof(CONSOLE_FONT_INFOEX));
     cfon.cbSize=sizeof(CONSOLE_FONT_INFOEX);
     //cfon.nFont=10;
     cfon.FontFamily=54;   //   Lucida  Console
     if (!SetCurrentConsoleFontEx(GetStdHandle(STD_OUTPUT_HANDLE), false, &cfon)) cout<<"error";
  }
 
  SetConsoleOutputCP(1251) ;  // устанавливаем кодировку вывода
  cout<<"по русски :)";
  cin.get();
  return 0;
}
 Комментарий модератора 
Запрещено публиковать ссылки на другие форумы.
Правила форума
 
Текущее время: 01:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru