Domanda

Attualmente sto riscontrando un problema molto strano con un CComboBox utilizzato all'interno di un CFormView .

Dopo aver aggiunto le stringhe alla casella combinata (creata con WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_VSCROLL | CBS_DROPDOWN | CBS_SORT | CBS_AUTOHSCROLL ), seleziono una voce tramite CComboBox :: SetCurSel e ridimensionare la casella combinata tramite MoveWindow nel gestore OnSize () della classe derivata CFormView .

Non appena includo la chiamata a MoveWindow , viene selezionato tutto il testo nella parte di modifica della casella combinata. Se rimuovo la chiamata a MoveWindow , il testo non viene selezionato. Questo succede non solo per uno, ma per tutte le caselle combinate utilizzate.

In qualche modo mi sono perso a questo punto. Ogni suggerimento è molto apprezzato!

È stato utile?

Soluzione

La selezione di tutto il testo è un comportamento standard di Windows quando viene attivata una casella combinata. Immagino che MoveWindow stia ripristinando l'attenzione sul controllo.

Prova a utilizzare CComboBox :: SetEditSel per rimuovere la selezione dopo MoveWindow.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top