Tabelle erstellen und füllen



  • hi

    ich möchte in einem dialog folgendes machen:

    - tabelle erstellen mit 6spalten und z.b. 5 zeilen (zeilen können variieren)
    - diese tabelle möchte ich natürlich mit werden füllen (CStrings)
    - und ich möchte diese tabelle periodisch updaten (alle 1-2 sec)

    das updaten werde ich über einen thread machen ...

    also folgendes soll bezweckt werden:

    ich habe eine statistik anzeige für den status mehrerer rechner ...
    diese geben wenn ich es will per befehl einen string zurück in dem format gut schlecht gesamt messzeit als cstrings drin steht ... diese abfrage will ich nun in dieser statisitk per tabelle anzeigen (jede zeile = 1 rechner) zu beginn wenn ich den dialog öffne weis ich mit wievielen rechnern ich mich verbinden will

    somit kann ich also eine feste tabelle erzeugen

    was ich nicht weis:
    das komplette handling einer tabelle ...
    weder wie ich sie erzeuge noch sonst was 🙂
    ist mein 1. versuch

    und daher wäre ich über rasche hilfe sehr erfreut 🙂

    also thx für hilfe
    LT





  • Wenn du was einfaches suchst kannst du auch ein List Kontroll im Report Style benutzen.



  • hmmm das 1. ist net schlecht, aber ehrlicherweise hab ich net so richtig nen plan wie ich das einbinden kann

    zum 2.: listcontrol ?
    welches element soll n das sein ? bzw wo kann ich da nen reportstyle einstellen ?

    also als programmierumgebung benutz ich Microsoft Visual C++ 6.0



  • In VC6.0 heisst das Listenelement und in den Eigenschaften des Elementes unter Format, kannste in der Anzeige auf Bericht stellen und fertig. rest dazu findeste dann im Netz.

    Und ich sag dir mal Vornweg das Version 6.0 veraltet is, nur vorsorglich bevor wieder die Diskusion los geht.



  • jojo VC 6.0 is veraltet is mir bekannt aber is nun ma entwicklungsumgebung und muss ich mich mit abfinden 🙂

    also ich nehm ma an das du "listenfeld" meinst ...
    also da gibt es folgende funktionen im formate-register:

    Rand / Sortieren / Benachrichtig. / Mehrspaltig
    Hor. Bildlauf / Vert. Bildlauf / Kein Neuzeichnen / Tabsstops
    Tastatureingabe erforderlich / Kein Bildlauf deaktivieren / Keine Gesamthöhe

    und das wars
    aber wo soll ich da auf Bericht stellen ?



  • nöch schöner wäre es natürlich wnen mir wer erklärt wie man den code vom 1. link einbauen tut ... weil die tabelle hat mir am besten gefallen

    muss zugeben das ich mit vc++ noch so gut wie nie gearbeitet hab ...
    von daher wäre schon nice wenn mir wer erklärt wie ich nun diese tabelle in meinen dialog einbauen kann ...



  • moin

    so also ich hab das bisher so:

    CListBox *lb = (CListBox *)GetDlgItem(IDC_TEST);
    	lb->ResetContent();
    
    	inhalt[0][0]="1";
    	inhalt[0][1]="2";
    	inhalt[0][2]="3";
    	inhalt[0][3]="4";
    	inhalt[0][4]="5";
    	inhalt[1][0]="6";
    	inhalt[1][1]="7";
    	inhalt[1][2]="8";
    	inhalt[1][3]="9";
    	inhalt[1][4]="10";
    	int index;
    	int a=0;
    	for(int y=0; y<255; y++){
    		if(inhalt[y][0].CompareNoCase("")!=0){
    			for(int x=0; x<10; x++){
    				if(inhalt[y][x].CompareNoCase("")!=0){
    					index = lb->AddString(inhalt[y][x]);
    					lb->SetItemData(index,a);
    					a++;
    				}
    			}
    		}
    	}
    

    leider addet der mir die daten aber untereinander...
    ich möchte aber das folgendes raus kommt:

    1 2 3 4 5
    6 7 8 9 10

    wie muss ich die listbox umbauen damit ich angeben kann wieviel spalten / zeilen
    diese listbox haben darf? und wie fülle ich dann die listbox entsprechend?

    weiterhin: kann ich der listbox rahmen zuweisen ? also so das zwischen jeder spalte / zeile trennlinien zu sehen sind ? wie halt bei ner richtigen tabelle ?

    mfg LT



  • Hallo,

    es geht um das "Listenelement", das in CListCrl verkapselt ist.
    ich würde das ohne (modularen) Dialog machen, und mit dem Gerüst in OnTimer die Daten holen und mit OnDraw die Daten als Tabelle zeichnen. Text -Rechteck drumrum-fertig.

    LG

    André


Anmelden zum Antworten