Aspetta ma quello che vuoi ottenere è solo che se quando stai editando la casella di testo premi invio viene eseguito il metodo gestore del click del pulsante salva?Originariamente inviato da Squall1988
grazie, pare funga, ma ora ho un altro problema, la proprietà DEFPUSHSTYLE non dovrebbe far si che il pulsante che ce l'ha sia premuto automaticamente con il tasto INVIO???
Xkè a me continua a premere quello precedente anche se gli ho tolto la proprietà.
In pratica, vorrei che quando si entra in una determinata casella di testo, il pulsante di default diventi un altro.
ho provato con
m_salva e m_calcola sono le variabili dei pulsanti e questa funzione è richiamata al focus della casella di testo. solo che si, graficamente il pulsante m_salva fa ciò che deve fare, ma premendo invio non viene richiamata la sua funzione di evento CLICKED...codice:void CCalcDlg::OnSetfocusNOME() { // TODO: Add your control notification handler code here UpdateData (true); UINT style = m_calcola.GetButtonStyle(); style &= ~BS_DEFPUSHBUTTON; m_calcola.SetButtonStyle (style); m_salva.SetButtonStyle (BS_DEFPUSHBUTTON); UpdateData (false); }
![]()
Se è così stai sbagliando proprio tutto l'approccio, devi solo gestire l'evento di pressione del tasto invio sulla casella di testo e in tale metodo richiamare il metodo gestore del clik di quel pulsante.In alt6re parole se i duel metodi sono:
void CCalcDlg::OnKeyPressedNOME(parametro indicante iltasto premuto)
{
if(tasto_premuto == INVIO)
{
OnClickedSalva();
}
}
void CCalcDlg::OnClickedSalva()
{
......
}

Rispondi quotando