Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

wywolanie consoli (program działający w tle) za pomoca klawisza

Ostatnio zmodyfikowano 2012-02-27 22:05
Autor Wiadomość
ptaq
Temat założony przez niniejszego użytkownika
wywolanie consoli (program działający w tle) za pomoca klawisza
» 2012-02-26 12:48:12
witam,
program działa w tle i chciałbym go wywołać za pomocą klawisza F1 ???
mam taki kod, co jest źle ?? ;>

C/C++
#include<iostream>
#include<windows.h>
using namespace std;
int main()
{
    int x;
   
   
    // FreeConsole();
   
    while( x != 0 ) {
       
        if( GetAsyncKeyState( VK_F1 ) ==- 32767 ) //?????????????
        //  AllocConsole();
       
       
             cin >> x;
       
        switch( x )
        {
           
        case 1:
            cout << "...";
            break;
           
        case 2:
            cout << "...";
            break;
           
        default:
            return 0;
           
        }
    }
}
P-51449
malan
» 2012-02-26 13:09:20
Czyżby program się wyłączał?
P-51452
ptaq
Temat założony przez niniejszego użytkownika
» 2012-02-26 13:15:56
no właśnie ;p ;/
P-51454
malan
» 2012-02-26 13:19:33
Przyjrzyj się co napisałeś:
C/C++
int x;

while( x != 0 )
{
    if( GetAsyncKeyState( VK_F1 ) ==- 32767 )
    {
        cin >> x;
    }
   
    switch( x )
    {
       
    case 1:
        cout << "...";
        break;
       
    case 2:
        cout << "...";
        break;
       
    default:
        return 0;
    }
}
Widzisz to? :)
P-51456
ptaq
Temat założony przez niniejszego użytkownika
» 2012-02-26 13:23:12
ale pod if-em jest AllocConsole() zakomentowalem bo i tak nie dziala :D
P-51457
malan
» 2012-02-26 13:26:56
Tak, ale liczy się tak naprawdę średnik, który jest dopiero po
std::cin
. Kompilator "widzi" to tak jak Ci napisałem. Poczytaj sobie o » Kurs C++ » Poziom 1Instrukcja warunkowa if ... else lekcja, paragraf Instrukcja lub blok instrukcji.
P-51458
npHard
» 2012-02-26 14:58:01
C/C++
int main() {
    int x;
    //ile w tym momencie wynosi x?
    while( x != 0 ) {
        /*...*/
    }
}

Zastanów się, odpowiedz na pytanie i będziesz wiedział ;>
P-51462
ptaq
Temat założony przez niniejszego użytkownika
» 2012-02-27 15:59:20
witam ponownie :D,
problem rozwiązałem, nie do końca jest tak jak chciałem ale na chwile obecną mnie zadawala, tylko że pojawil sie kolejny problem ;p. Pętla ma sie obracać caly czas, a w obecnym stanie zatrzymuje sie na cin >>x. Ma ktoś jakiś pomysł ?
C/C++
#include<iostream>
#include<windows.h>
using namespace std;
int main()

{
    int x;
   
   
    while( x != 0 ) {
       
       
        cin >> x;
       
        switch( x )
        {
           
        case 1:
            cout << "...";
            break;
           
        case 2:
            cout << "...";
            break;
           
        case 3:
            cin.clear();
            FreeConsole();
            break;
           
            default:
            return 0;
           
        }
        if( GetAsyncKeyState( VK_F1 ) ==- 32767 ) {
            AllocConsole(); }
       
    }
}
P-51509
« 1 » 2 3
  Strona 1 z 3 Następna strona