Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
C++

[ROZWIĄZANE] Sprawdzenie poprawności kodu na klikanie przycisków

c++

  • Zamknięty Temat jest zamknięty
2 odpowiedzi w tym temacie

#1 Pan PrO

    Wszechpomocny

  • Użytkownik

Reputacja: 99
Zaawansowany

  • Postów:388
  • Lokalizacja:PC
Offline

Napisano 26.03.2015 16:54

Witam. Używam środowiska Dev C++. Chciałem napisać mały programik, który będzie wykonywać operacje na klawiaturze, lecz nigdy nie miałem styczności z C++, więc chciałem was poprosić o porady i sprawdzenie poprawności kodu. Krótki opis programiku.

 

Gdy nacisnę przycisk 5 program tak jakby zawiesza się. Gdy nacisnę 4 lub 6 program klika po sekundzie 5 i klika z powrotem w wybrany przycisk (4 lub 6) po sekundzie znowu 5 i zamienia na wybrany, gdy nacisnę drugi przycisk to klika 5 z wybranym drugim przyciskiem, a gdy nacisnę 5 program "zawiesza się" lecz gdy program naciśnie 5 nie zawiesza się. Wiem, że trochę dziwnie wytłumaczona, ale myślę, że zrozumiecie

 

Oto kod:

#include <stdafx.h>
#include <iostream>
#include <windows.h>

bool aktiv;
bool program;
bool wykonano;

int klawisz;
int nowyklawisz;

using namespace std;

case WM_KEYDOWN:
{
    switch((int) wParam)
    {
    	case VK_KEY_5:
    	{
		if(!program)
        		aktiv = false;
		else
		{
			keybd_event(klawisz, 0, 0, 0);
			keybd_event(klawisz, 0, KEYEVENTF_KEYUP, 0);
			program = false;
		}
        	break;
    	}
    	case VK_KEY_4:
    	{
		if(!program)
        		aktiv = true;
		
		klawisz = 0x34;
		Klikaj();
       		break;
    	}
    	case VK_KEY_6:
    	{
		if(!program)
        		aktiv = true;

		klawisz = 0x36;
		Klikaj();
        	break;
    	}
    }
    break;
}

void Klikaj()
{
	if(wykonano)
		return 0;
	
	if(!aktiv)
		return 0;

	wykonano = true;

	Sleep(1000);

	if(!aktiv)
		return 0;

	program = true;

	keybd_event(0x35, 0, 0, 0);
	keybd_event(0x35, 0, KEYEVENTF_KEYUP, 0);

	wykonano = false;
}

Możecie sprawdzić poprawność kodu ??


  • +
  • -
  • 0

#2 Pan PrO

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 99
Zaawansowany

  • Postów:388
  • Lokalizacja:PC
Offline

Napisano 29.03.2015 19:41

Można zamknąć


  • +
  • -
  • 0

#3 MAGNET

    SourceLearned ;)

  • Moderator

Reputacja: 661
Wszechmogący

  • Postów:1 535
  • GG:
  • Imię:Olek
  • Lokalizacja:Dalekoo
Offline

Napisano 29.03.2015 20:47

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Temat zamknięty na prośbę użytkownika

Jeśli się z tym nie zgadzasz, report.png raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL


  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: c++

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych