hallo,
ich habe ein CEdit Feld mit einem CSpinCtrl Element verbunden um ganzzahlige Werte inkrementieren bzw. dekrementieren zu können. Ich möchte jetzt aber das 12 mögliche Zahlenwerte nach folgendem Muster zur Verfügung stehen:
Ich habe hierfür die Methode Set bzw. GetAccel( int nAccel, UDACCEL* pAccel ) gefunden. Aus der MSDN werde ich hierbei nicht wirklich schlau nAccel stellt angeblich die Anzahl der UDACCEL structs dar. ich habe mir das struct angesehen und frage mich was ich da mit der zeit anfangen soll.
kann mir jemand sagen wie ich meine vorliegende Tabelle an ein CSpinCtrlButton übergeben kann, sodass nur diese Werte zur Auswahl stehen?
Mein bisheriger Code für diese Funktion:
wenn ich es über die Membervariable vom CSpinCtrlButton versuche steigt er mir bei SetWindowText() aus
ich habe ein CEdit Feld mit einem CSpinCtrl Element verbunden um ganzzahlige Werte inkrementieren bzw. dekrementieren zu können. Ich möchte jetzt aber das 12 mögliche Zahlenwerte nach folgendem Muster zur Verfügung stehen:
Code:
double GainTab[] = { 0.01, 0.02, 0.05,
0.1 , 0.2 , 0.5 ,
1 , 2 , 5 ,
10 , 20 , 50 };
Ich habe hierfür die Methode Set bzw. GetAccel( int nAccel, UDACCEL* pAccel ) gefunden. Aus der MSDN werde ich hierbei nicht wirklich schlau nAccel stellt angeblich die Anzahl der UDACCEL structs dar. ich habe mir das struct angesehen und frage mich was ich da mit der zeit anfangen soll.
kann mir jemand sagen wie ich meine vorliegende Tabelle an ein CSpinCtrlButton übergeben kann, sodass nur diese Werte zur Auswahl stehen?
Mein bisheriger Code für diese Funktion:
Code:
void CDisplayControl::OnChangeScale()
{
double GainTab[] = { 0.01, 0.02, 0.05,
0.1 , 0.2 , 0.5 ,
1 , 2 , 5 ,
10 , 20 , 50 };
int NewValue = ((CSpinButtonCtrl*)GetDlgItem(IDC_SPIN_SCALE))->GetPos();
if(NewValue < 0)
{
NewValue = 0;
}
if(NewValue > 11)
{
NewValue = 11;
}
// Hier sollte das GainTab Array auf das Kontrollelement übergeben werden.
((CWiwoDlg*)AfxGetMainWnd())->pDP.d_fac = GainTab[NewValue];
}
wenn ich es über die Membervariable vom CSpinCtrlButton versuche steigt er mir bei SetWindowText() aus
Code:
double n = GainTab[NewValue];
CString s;
s.Format("%.2lf", n);
m_ctrlScale.SetWindowText(s);
Zuletzt bearbeitet: