Ir ao conteúdo
  • Cadastre-se
s4lezardv1A

C Criar uma condição para que uma opção apareça

Recommended Posts

Bom dia, estou tentando criar uma condição para que uma caixa de opções apareça e para que ela desapareça. Caso eu passe o mouse em cima só, a opção principal muda de cor, se eu tiro o mouse ela volta para a cor normal, isso eu fiz. Agora se o mouse passar em cima e clicar, aparecera um submenu , isso eu fiz, mas só que a opção principal tem que mudar de cor e ficar com essa cor fixa. E caso se eu clicar novamente com o mouse em cima o menu desaparece, isso ja sei como fazer, e a cor da opção principal volta ao normal. Ou ainda, ela so vai mudar para a cor normal caso eu clicar de novo na opção principal ou escolher uma das opções do submenu. Gostaria de saber como permanecer com a cor alterada ate que eu clicasse de novo ou ate que eu escolhesse uma das opções do submenu.

 

   if ( (ir_Evento->Event.MouseEvent.dwMousePosition.X >=66 ) && (ir_Evento->Event.MouseEvent.dwMousePosition.X <=68 ) && ( ir_Evento->Event.MouseEvent.dwMousePosition.Y == 23 ) )
        {
           gotoxy(66,23);
    SetConsoleTextAttribute(hConsole, BACKGROUND_INTENSE_BLUE);
    printf(" %c ",16);
    SetConsoleTextAttribute(hConsole, saved_attributes);
      if ( (ir_Evento->Event.MouseEvent.dwMousePosition.X >=66 ) && (ir_Evento->Event.MouseEvent.dwMousePosition.X <=68 ) && ( ir_Evento->Event.MouseEvent.dwMousePosition.Y == 23 ) )
        {
            if (MOUSE_EVENT == ir_func.EventType && ir_func.Event.MouseEvent.dwButtonState == FROM_LEFT_1ST_BUTTON_PRESSED)
            {
                    gotoxy(66,23);
    SetConsoleTextAttribute(hConsole, BACKGROUND_INTENSE_BLUE);
    printf(" %c ",16);
    SetConsoleTextAttribute(hConsole, saved_attributes);
             SetConsoleTextAttribute(hConsole, BACKGROUND_WHITE);
    gotoxy(77,22);
    printf("     ALUNO     ");
    gotoxy(77,24);
    printf("  COLABORADOR  ");
SetConsoleTextAttribute(hConsole, saved_attributes);
cont = 2;

            }
        }
            else if ( cont == 1)

        {
             gotoxy(66,23);
    SetConsoleTextAttribute(hConsole, BACKGROUND_BLUE);
    printf(" %c ",16);
    SetConsoleTextAttribute(hConsole, saved_attributes);

        }

        }

 

ATUALIZADO

 

Acredito que o que acontece é que quando posiciono o mouse e clico para fazer uma coisa, entra em conflito quando eu só posiciono e tiro da posição. Não consigo resolver isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×