Console Colors

9 отговора 202 прегледа
#1

Console Colors

Njakoi moze li da mi kaze po kakuv nachin moga da promenjam cvetovete na texta v consolno prilozenie? Ima li class v .Net Framework koito da prvai tova i dali vobshte e vuzmozno? Blagodarja vi predvaritelno!

Отговор
в отговор на nevil #2

Re: Console Colors

като се съди по презентацията на Anders Hejlsberg на PDC в Whidbey тези неща ще са добавени към System.Console

ако ти трябва преди това, някой с опит в дос ерата ще ти обясни как става по "стария" начин. в клуб програмисти май имаше нещо по темата на скоро

Отговор
в отговор на s_dimi #3

Re: Console Colors

Shte proverja, vse pak blagodarja

Отговор
в отговор на nevil #4

Re: Console Colors

Vse pak me interesuva, spacialno v .NET kak stava tzoi nomer?
Blagodarja

Отговор
в отговор на nevil #5

Никак не стои

Значи... Поне доколкото аз знам, идеята на конзолното приложение е да ти изведе просто текст - ако искаш нещо повече - защо не ползваш Windows Forms? Между другото, и аз съм се питал, дали може да си играеш с цветовете в конзолно приложение. Обаче задай си въпроса: За какво ти е програма за Windows 2000 и нагоре, която да работи в текстов режим в стил DOS? Идеята на конзолното приложение е то просто да изведе нужната информация - нищо повече. Ако искаш цветове - наастрой си цветовете на конзолата (няма нищо общо с програмиране, виж менюто на конзолния прозорец).
П.П. Сори ако повтарям неща които са ясни - не е от лошо или подценяване.
П.П.П. Ако се окаже чи има начин за цветове в конзола - моля сподели как става, вече споменах че и на мен ми е интересно ;)

Ние сме точици във вселената. А всеки човек е една цяла вселена...
Отговор
в отговор на nevil #6

Re: Console Colors

мдаа ... явно някой в Майкрософт се е усетел че може да wrap-не още 1-2 API-та вместо да кара хората да импортват unmanaged dll по гадния VB стил ... обаче този feature ще е available в Widbey-то ... в VS2003 ако искаш да смениш цветовете на конзолата трябва да направиш това на своя глава.

Ето малко псевдо код:


1) първо:

using System.Runtime.InteropServices;
[DllImport("kernel32.dll")]
public static extern int GetStdHandle(...);
public static extern int SetConsoleTextAttribute(...);


2) второ:

HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE)
SetConsoleTextAttribute(hConsole, forecolor_backcolor_combination)


айде са си направи конзолата на darkaqua background на pink foreground


XM TurboCT .. where comfort meets power
Отговор
в отговор на шeф нa Coди Дeвня #7

Re: Console Colors

Blagodarja za code!!! No ne si me razbral dobre. Az ne iskam da promenjam background-a ili foreground-a. Iskam da izpolzvam razlichni cvetove za texta v konzolata: Naprimer zaglavieto(texta) da e v cherveno, menuto(texta) da bude v sinio-naprimer? Dali e vuzmozno tova ili az si fantaziram, che moze da se sluchi takova neshto? Vse smjatah, che ima njakoi class gotov zatova, no sum se zabluzdaval. Tursih v MSDN no nishto. Oshte vednuz blagodarja

Отговор
в отговор на nupkc #8

Re: Никак не стои

Napulno si prav, no suglasi se, che vse pak ako imash njakakva konzolna programa, zaglavieto ako e v cherveno, menuto e v drug cvjat, userite shte mogat po burzo da se orientirat v obstanovkata. I nai-veche, shte e malko po razlichno ot klasicheskija Windows style.

Отговор
в отговор на nevil #9

Re: Никак не стои

Добре де, ползвай WinForms и пиши в RichEdit, щом толкова държиш на текстовия режим.
Там ще имаш не само светове, но и шрифтове, болд, италик, може да си вкарваш и картинки, въобще каквото си искаш

Ние сме точици във вселената. А всеки човек е една цяла вселена...
Отговор
в отговор на nupkc #10

Re: Никак не стои

Viz za shriftovete ne se bjah setil

Отговор