Fazendo um CDialog visível

votos
1

Eu estou tentando obter um DialogBox com uma caixa de seleção para aparecer. Eu adicionei-lo para o arquivo de recurso, criou o modelo de diálogo, e acrescentou o manipulador de classe e eventos para o diálogo. Pelo que entendi, agora eu só preciso para criar uma instância da classe e chamar DoModal ().


Então, eu fui para trás e feito alguma investigação e jogou com o código de alguns e isso é o que eu tenho agora

UsingMSPSK PSKDialog;

    se (PSKDialog.DoModal () == IDOK)
    {


    }
    outro {
        AfxMessageBox ( Não IDOK);
    }
    CTempoDialog TempoDialog;


    se (TempoDialog.DoModal () == IDOK)
        {

        }



Quando eu executo isso, fico sem diálogo da chamada PSLDialog.DoModal (), mas tenho a AfxMessageBox, então o TempoDialog aparece. Eu pisei através da chamada DoModal () no depurador e parecia correr e retornar corretamente, então eu não consigo descobrir onde a minha caixa de diálogo está indo.

Eu olhei para o valor de retorno da chamada DoModal () novamente, e parece que ele está saindo imediatamente, como posso corrigir isso?

Publicado 27/08/2009 em 02:53
fonte usuário
Em outras línguas...                            


2 respostas

votos
2

Ele deve trabalhar para tornar o diálogo visível - assumindo o modelo de diálogo tem o estilo WS_VISIBLE e assim por diante. Talvez a inicialização de diálogo está a falhar? Será que o "DoModal" diálogo saída chamada imediatamente? Isto indicaria uma falha para criar a janela.

Qual versão do Visual Studio que você está usando? Versão 6 usado para não deixar você definir pontos de interrupção no código que ainda não foi carregado. Como alternativa, certifique-se de que os símbolos são carregados. Na janela de Módulos, clique direito a dll que contém o código e escolher "símbolos de carga". Você está fazendo uma compilação de depuração com informações simbólico, ou uma compilação de lançamento? Certifique-se que é uma compilação de depuração para a experiência mais fácil depuração.

Respondeu 27/08/2009 em 03:05
fonte usuário

votos
0

Eu não sei por que isso aconteceu, mas a caixa de seleção acrescentei era um controle ActiveX, e quebrou minha caixa de diálogo. Quando descobri o painel de caixa de ferramentas, e arrastou uma caixa de seleção a partir daí, ele funcionou bem.

Respondeu 12/09/2009 em 19:23
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more