Ĺadny brzuch
Witam,
mam takie proste chyba w sumie pytanie:
Jak pisac programy (takie zwykle w stylu: cout<<"ble";) w c++ tak zeby nie uruchamialy sie w konsoli (czarej) tylko w okienku (takim bialym - windowsowym)?
Szukam tego i nie moge znalezc- czy ma to cos wspolnego z "windows.h"
Uzywam devc++ lub c++ buildera
z gory dzieki za odpowiedzi
pozdrowienia,
konjo
Przestudiuj sobie WinAPI, właśnie do niego używasz bivlioteki windows.h, ale za pomocą cout to ja nie wiem czy coś na tym okienku wyświetlisz ;).
Pozdro for All
gg:4826295 | neohacker@interia.pl
Jeżeli używasz Buildera, to nie powinieneś mieć problemu. Masz w nim mnówstwo komponentów (pola tekstowe, przyciski itp.). W zasadzie to Builder służy właśnie do tworzenia programów okienkowych, a nie na konsolę.
Pozdrawiam i zapraszam na *** www.windowsik.prv.pl ***
W buldierze jest taki komponent LABEL i we właściwości caption wpisujesz tekst :)
TRATAT
nie chodzilo mi raczej o programowanie na obiektach (tak jak w builderze na komponentach)... chodzilo mi o cos takiego:
http://www.konjo1.re...pl/bolek2fn.exe
wydaje mi sie ze to nie jest robione za pomoca form'ow i labeli...
pozdrowienia,
konjo
Przecież ja Ci nie pisałem o operacjach na Labelach itp., funkcje WinAPI wykożystujesz do budowania własnych okien od podstaw.
Pozdro for All
gg:4826295 | neohacker@interia.pl
ok dzieki
w takim razie pobawie sie WinApi i troche sie tego poucze :)
pozdrowienia,
konjo
konjo zostales perfidnie oszukany ;] wcale nie musisz uzywac komponentow/operacji na labelach/itp ;]
jak sie przyjrzysz temu programikowi co dales linka to to jest zwykly program konsolowy tylko ze ma ustawione tlo na kolor bialy a tekst na czarny. i to cala roznica miedzy zwyklym konsolowym programem a tym twoim.
zeby cos takiego uzyskac musisz wpisac 3 linie kodu ;] plus plik naglowkowy. google i msdn twoim przyjacielem.
wiec albo w dev albo w bcb otwierasz sobie nowy projekt console application i wpisujesz kodzik:
#include <windows.h> // to musisz dodac
#include <iostream>
using namespace std;
int main()
{
// i te trzy linie ponizej
LPDWORD written; COORD coord; coord.X=0; coord.Y=0;
FillConsoleOutputAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE|BACKGROUND_INTENSITY,80*50,coord,written);
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE|BACKGROUND_INTENSITY);
// a tu reszta twojego programu :]
cout<<"elo";
cin.get();
return 0;
}
pozdrawiam
pepsi^no1
Heheheh... :)
Pepsi - zostałeś ofiarą czytania bez zrozumienia - nie chcę Cię w żaden sposób urażać, ale, cytuję:
cytat:konjo napisał:
Jak pisac programy (takie zwykle w stylu: cout<<"ble" w c++ tak zeby nie uruchamialy sie w konsoli (czarej) tylko w okienku (takim bialym - windowsowym)?
(pogrubienie i kursywa moja)
Na moje oko, z tego tekstu jasno wynika, że chodzi o okno, nie o konsolę, tj. o pisanie aplikacji samodzielnie wypisujących coś w okienku, a nie emulowanie DOS`a w konsoli.
I przy tym używa się WinAPI (niech będzie - komponenty z BC++ też jakoś ujdą :P), czyli interfejsu programistycznego (API - ang. Application Programming Interface) zawierającego zbiór funkcji i typów używanych w systemie Windows.
Do nauki WinAPI polecam książkę Charles`a Petzolda Programowanie Windows - gruby, ale bardzo dobry podręcznik WinAPI. Oczywiście najważniejszą pomocą jest tu Microsoft Developer`s Network, a.k.a. MSDN - www.msdn.microsoft.com - największa dokumentacja dotycząca wszystkiego, co z Windows związane.
Na koniec podam najprostrzy przykład Windowsowego programu; wypisuje się w komunikacie (Message Box), a nie w okienku, bo tworzenie okien jest nieco bardziej skomplikowane:
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
{
MessageBox(NULL,"Hello World!","Just a message :)", MB_OK | MB_ICONINFORMATION);
return 0;
}
Kompilacja i uruchomienie tego programu powinno spowodować wyświetlenie na ekranie komunikatu o nagłówku (na pasku) "Just a message :)", treści "Hello World!", z jednym przyciskiem - OK (MB_OK) i z ikonką informacji (MB_ICONINFORMATION).
Pozdrawiam,
TeMPOraL.
PS. Pepsi - ale Twoja informacja jest o tyle ważna, że mówi nam, jak zmienić kolory w konsoli z poziomu programu :)
//================================================
KĄESACP: Komputer Ąwiat - Expert Society Against Crap Posting
To join: Put these lines in your signature and don't post crap!
"E = mc... dolen taken my notepad!" - Terran Science Vessel (StarCraft)
GG: 1488052 | temporal@poczta.fm | [url]http://www.temporal-software.prv.pl
:)
no to ladnie :) myslalem ze to cos bardziej skomplikowanego...
wielkie dzieki wszystkim za pomoc
pozdrowienia,
konjo
Jakbyś jeszcze to potrzebował to podaje linka do strony z tutorialem(możesz sprawdzić), większość źródeł w C++.net , ale jest kilka portów dla deva, a i zrozumienie z tych .net-owych przykładów nie powinno być trudne. POWODZENIA!!:)
http://www.gametutor...2/Win32_Pg1.htm
Garret
TeMPOraL ja sie trzymam calkiem dobrze ;] a szanowny konjo postanowil nam sprostowac cala sprawe i podeslal linka:
http://www.konjo1.re...pl/bolek2fn.exe
i chodzilo mu o taki efekt :P
czytaj caly watek uwazniej ;]
pozdrawiam
pepsi^no1
W takim wypadku zwracam honor i przepraszam.
Widziałem ten link, ale coś mnie powstrzymało przed skorzystaniem z niego :)
Sry raz jeszcze.
//================================================
KĄESACP: Komputer Ąwiat - Expert Society Against Crap Posting
To join: Put these lines in your signature and don't post crap!
"E = mc... dolen taken my notepad!" - Terran Science Vessel (StarCraft)
GG: 1488052 | temporal@poczta.fm | [url]http://www.temporal-software.prv.pl
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
mam takie proste chyba w sumie pytanie:
Jak pisac programy (takie zwykle w stylu: cout<<"ble";) w c++ tak zeby nie uruchamialy sie w konsoli (czarej) tylko w okienku (takim bialym - windowsowym)?
Szukam tego i nie moge znalezc- czy ma to cos wspolnego z "windows.h"
Uzywam devc++ lub c++ buildera
z gory dzieki za odpowiedzi
pozdrowienia,
konjo
Przestudiuj sobie WinAPI, właśnie do niego używasz bivlioteki windows.h, ale za pomocą cout to ja nie wiem czy coś na tym okienku wyświetlisz ;).
Pozdro for All
gg:4826295 | neohacker@interia.pl
Jeżeli używasz Buildera, to nie powinieneś mieć problemu. Masz w nim mnówstwo komponentów (pola tekstowe, przyciski itp.). W zasadzie to Builder służy właśnie do tworzenia programów okienkowych, a nie na konsolę.
Pozdrawiam i zapraszam na *** www.windowsik.prv.pl ***
W buldierze jest taki komponent LABEL i we właściwości caption wpisujesz tekst :)
TRATAT
nie chodzilo mi raczej o programowanie na obiektach (tak jak w builderze na komponentach)... chodzilo mi o cos takiego:
http://www.konjo1.re...pl/bolek2fn.exe
wydaje mi sie ze to nie jest robione za pomoca form'ow i labeli...
pozdrowienia,
konjo
Przecież ja Ci nie pisałem o operacjach na Labelach itp., funkcje WinAPI wykożystujesz do budowania własnych okien od podstaw.
Pozdro for All
gg:4826295 | neohacker@interia.pl
ok dzieki
w takim razie pobawie sie WinApi i troche sie tego poucze :)
pozdrowienia,
konjo
konjo zostales perfidnie oszukany ;] wcale nie musisz uzywac komponentow/operacji na labelach/itp ;]
jak sie przyjrzysz temu programikowi co dales linka to to jest zwykly program konsolowy tylko ze ma ustawione tlo na kolor bialy a tekst na czarny. i to cala roznica miedzy zwyklym konsolowym programem a tym twoim.
zeby cos takiego uzyskac musisz wpisac 3 linie kodu ;] plus plik naglowkowy. google i msdn twoim przyjacielem.
wiec albo w dev albo w bcb otwierasz sobie nowy projekt console application i wpisujesz kodzik:
#include <windows.h> // to musisz dodac
#include <iostream>
using namespace std;
int main()
{
// i te trzy linie ponizej
LPDWORD written; COORD coord; coord.X=0; coord.Y=0;
FillConsoleOutputAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE|BACKGROUND_INTENSITY,80*50,coord,written);
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE|BACKGROUND_INTENSITY);
// a tu reszta twojego programu :]
cout<<"elo";
cin.get();
return 0;
}
pozdrawiam
pepsi^no1
Heheheh... :)
Pepsi - zostałeś ofiarą czytania bez zrozumienia - nie chcę Cię w żaden sposób urażać, ale, cytuję:
cytat:konjo napisał:
Jak pisac programy (takie zwykle w stylu: cout<<"ble" w c++ tak zeby nie uruchamialy sie w konsoli (czarej) tylko w okienku (takim bialym - windowsowym)?
(pogrubienie i kursywa moja)
Na moje oko, z tego tekstu jasno wynika, że chodzi o okno, nie o konsolę, tj. o pisanie aplikacji samodzielnie wypisujących coś w okienku, a nie emulowanie DOS`a w konsoli.
I przy tym używa się WinAPI (niech będzie - komponenty z BC++ też jakoś ujdą :P), czyli interfejsu programistycznego (API - ang. Application Programming Interface) zawierającego zbiór funkcji i typów używanych w systemie Windows.
Do nauki WinAPI polecam książkę Charles`a Petzolda Programowanie Windows - gruby, ale bardzo dobry podręcznik WinAPI. Oczywiście najważniejszą pomocą jest tu Microsoft Developer`s Network, a.k.a. MSDN - www.msdn.microsoft.com - największa dokumentacja dotycząca wszystkiego, co z Windows związane.
Na koniec podam najprostrzy przykład Windowsowego programu; wypisuje się w komunikacie (Message Box), a nie w okienku, bo tworzenie okien jest nieco bardziej skomplikowane:
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
{
MessageBox(NULL,"Hello World!","Just a message :)", MB_OK | MB_ICONINFORMATION);
return 0;
}
Kompilacja i uruchomienie tego programu powinno spowodować wyświetlenie na ekranie komunikatu o nagłówku (na pasku) "Just a message :)", treści "Hello World!", z jednym przyciskiem - OK (MB_OK) i z ikonką informacji (MB_ICONINFORMATION).
Pozdrawiam,
TeMPOraL.
PS. Pepsi - ale Twoja informacja jest o tyle ważna, że mówi nam, jak zmienić kolory w konsoli z poziomu programu :)
//================================================
KĄESACP: Komputer Ąwiat - Expert Society Against Crap Posting
To join: Put these lines in your signature and don't post crap!
"E = mc... dolen taken my notepad!" - Terran Science Vessel (StarCraft)
GG: 1488052 | temporal@poczta.fm | [url]http://www.temporal-software.prv.pl
:)
no to ladnie :) myslalem ze to cos bardziej skomplikowanego...
wielkie dzieki wszystkim za pomoc
pozdrowienia,
konjo
Jakbyś jeszcze to potrzebował to podaje linka do strony z tutorialem(możesz sprawdzić), większość źródeł w C++.net , ale jest kilka portów dla deva, a i zrozumienie z tych .net-owych przykładów nie powinno być trudne. POWODZENIA!!:)
http://www.gametutor...2/Win32_Pg1.htm
Garret
TeMPOraL ja sie trzymam calkiem dobrze ;] a szanowny konjo postanowil nam sprostowac cala sprawe i podeslal linka:
http://www.konjo1.re...pl/bolek2fn.exe
i chodzilo mu o taki efekt :P
czytaj caly watek uwazniej ;]
pozdrawiam
pepsi^no1
W takim wypadku zwracam honor i przepraszam.
Widziałem ten link, ale coś mnie powstrzymało przed skorzystaniem z niego :)
Sry raz jeszcze.
//================================================
KĄESACP: Komputer Ąwiat - Expert Society Against Crap Posting
To join: Put these lines in your signature and don't post crap!
"E = mc... dolen taken my notepad!" - Terran Science Vessel (StarCraft)
GG: 1488052 | temporal@poczta.fm | [url]http://www.temporal-software.prv.pl