Matrix in Listbox ausgeben

Zanvenganza

Grünschnabel
Hallo,

Zuerst, Ich bin Anfänger und arbeite gerade an einem Studienprojekt

Meine Aufgabe lautet:

- In 9 Edit Control -Steuerelementen sollen neun zahlen eingegeben werden können, die zusammen eine 3x3 Matrix bilden.

- Diese Matrix soll in einem Listbox-Steuerelement ausgegeben werden können

- Bei betätigen eines Buttons soll die zur eingegebenen Matrix transponierte Matrix ausgegeben werden.

Ich bin schonmal soweit gekommen, dass ich die neun zahlen einlesen kann, und diese in der Listbox wieder ausgegeben werden.
Allerdings nur untereinander und nach zahlen sortiert ( 1,12,22,4).

Wie bekomm ich diese jetzt zur Matrix hin.

Mein Quelltext der .cpp

void CGruppe14Dlg::OnBnClickedTransponieren()
{
// TODO: Fügen Sie hier Ihren Kontrollbehandlungscode für die Benachrichtigung ein.


double eins, zwei, drei, vier, fuenf, sechs, sieben, acht, neun;
char str[100];

//alte Werte aus der Liste löschen
m_Ausgabe.ResetContent();

//Benutzereingabe einlesen
m_eins.GetWindowText(str, 100);
eins = atof(str);

m_zwei.GetWindowText(str, 100);
zwei = atof(str);

m_drei.GetWindowText(str, 100);
drei = atof(str);

m_vier.GetWindowText(str, 100);
vier = atof(str);

m_fuenf.GetWindowText(str, 100);
fuenf = atof(str);

m_sechs.GetWindowText(str, 100);
sechs = atof(str);

m_sieben.GetWindowText(str, 100);
sieben = atof(str);

m_acht.GetWindowText(str, 100);
acht = atof(str);

m_neun.GetWindowText(str, 100);
neun = atof(str);


{
sprintf_s(str, "%lf", eins);
m_Ausgabe.AddString(str);
sprintf_s(str, "%lf", zwei);
m_Ausgabe.AddString(str);
sprintf_s(str, "%lf", drei);
m_Ausgabe.AddString(str);
sprintf_s(str, "%lf", vier);
m_Ausgabe.AddString(str);
sprintf_s(str, "%lf", fuenf);
m_Ausgabe.AddString(str);
sprintf_s(str, "%lf", sechs);
m_Ausgabe.AddString(str);
sprintf_s(str, "%lf", sieben);
m_Ausgabe.AddString(str);
sprintf_s(str, "%lf", acht);
m_Ausgabe.AddString(str);
sprintf_s(str, "%lf", neun);
m_Ausgabe.AddString(str);
}

}


Würd mich über antworten freuen
Gruß
 

CodeFatal

Erfahrenes Mitglied
Hallo,

wenn ich das richtig verstanden habe und m_Ausgabe vom Typ CListCtrl ist hilft folgendes:
List Control auf Ansicht "Bericht"

in OnInit Dialog Spalten einpflegen:
Code:
CRect r;
m_Ausgabe.GetClientRect(&r);
m_Ausgabe.InsertColumn(0,"Eins",LVCFMT_LEFT,r.Width()/3);
m_Ausgabe.InsertColumn(1,"Zwei",LVCFMT_LEFT,r.Width()/3);
m_Ausgabe.InsertColumn(2,"3",LVCFMT_LEFT,r.Width()/3);

In deiner Funktion kannst du dann mit folgendem Code deine Tabelle füllen:
Code:
int nitem = m_Ausgabe.InsertItem(m_Ausgabe.GetItemCount(),"");
m_Ausgabe.SetItemText(nitem,0,"wert 1");
m_Ausgabe.SetItemText(nitem,0,"wert 2");
m_Ausgabe.SetItemText(nitem,0,"wert 3");


Gruß
Michael
 

Neue Beiträge