Pergunta

Eu estou tentando usar grade final do projeto de código em uma caixa de diálogo, mas a grade é invisível.

m_Plist.AttachGrid (este, IDC_CREDENTIALS) retorna true, mas o titular lugar o texto estático, onde a grade deve ser mostrado não pode ser visto e a grade não será exibida.

Eu estou usando o código de amostra a partir daqui http://www.codeproject.com/KB/MFC/UltimateGrid_Start.aspx?display=PrintAll&fid=452565&df=90&mpp=25&noise=3&sort=Position&view=Quick&select=2629959&fr=51 #Using_the_Grid_in_a_CDialog

Eu instalei a atualização mais recente UltimateGrid72_Src_Update03.zip e Im usando VS2008 SP1.

Obrigado ...

BOOL CCredentials::OnInitDialog()
{
    CDialog::OnInitDialog();

    MyCug m_PList;

m_Plist.AttachGrid(this, IDC_CREDENTIALS);

}
Foi útil?

Solução

Eu não usei final Grade mim. No entanto, olhando para o código que você postou, eu posso ver que não é provável que seja um problema: você declarar uma instância de "MyCug" na pilha, em seguida, anexá-lo, mas essa instância baseada em pilha será destruído tão logo o OnInitDialog () método existe. O que você deve fazer é colocar a declaração de "MyCug m_PList;" como um membro da classe de diálogo, para que a vida útil do objeto grade é o mesmo que o tempo de vida do diálogo.

Outras dicas

Eu não sei por que sua grade não está exibindo, as coisas estão a olhar para está-lo corretamente carregar a partir do modelo de diálogo, e é visível? Você pode usar Spy ++ (uma ferramenta distribuída com o visual studio) para ver o que as janelas são realmente criado em sua caixa de diálogo, onde estão e as bandeiras e estilos definir sobre eles.

Depois de criar e anexar a grade, você está adicionando linhas e colunas conforme definido pelos exemplos?

Caso contrário, não vai ser qualquer coisa para ver.

Você precisa ter o seguinte código no MyCug :: OnSetup ():

void MyCug::OnSetup(){ 

    //*******Set the Rows and Columns
    SetNumberCols(10);
    SetNumberRows(10); 

} 

É a partir do tutorial na versão 7.2. Eu costumava UG extensivamente, e não tenho problemas com VS2008. Mas eu criar toda a minha grade mim, eu não usar modelos de diálogo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top