CListCtrl geht nicht...



  • Hi,
    Ich denke ma, daß es an SetBkColor() und SetTextColor() liegt. Ich bezweifle, daß das bei einem Listen-Control so einfach geht. Es sind geerbte Elemente der Fensterklasse, die aber hier nicht funktionieren. Der restliche Code sollte eigentlich funktionieren...Ich habe keine Möglichkeit den Code zu testen. Probiere es nochmal, ohne die genannten Funktionen...



  • jup den hab ich...

    Ach ja vergessen, ist ne MFC-Anwendung, falls das relevant sein sollte



  • Ich hab die beiden funktionen rausgenommen und es passiert trotzdem nicht, als dass die Liste leer ist. Weder Die Splante noch der eine Eintrag ist zu sehen.. 😞



  • Musste man da nicht noch in den Eigenschaften -> Formate -> Ansicht auf "Bericht" umstellen ?



  • ...Jetzt ma eine "dumme" Frage...hast Du die Liste mit einer ListViewRessource verbunden, oder einfach nur eine CListCtrl deklariert?



  • ich und dumme fragen 😉

    @ isabeau
    nein also ich hab da noch nichts umgestellt. HAb leider die englische version und tu mich da gerade schwer mit finden 😞

    @ RR
    ????
    Ich hab halt nur die Variable deklariert. Steht ja nirgends, dass ich das noch mit was verbinden muss, jedenfalls nicht in den Hilfen die ich habe



  • ...ja da liegt der Hund begraben, eine ListViewKlasse muß mit einer ListViewRessource verbunden werden...In Visual C++ geht das ganz einfach...rufe den Klassenassistenten auf und verbinde mit der Ressourcen-ID eine Klassenvariable...dies gehört zu den grundlegenden Arbeitsweisen...sieh in der Begleithilfe nach



  • hmm ich hab in meinen Recource Symbolen mal nachgeschaut und da steht mein Listenfeld drin...



  • RR schrieb:

    ...Jetzt ma eine "dumme" Frage...hast Du die Liste mit einer ListViewRessource verbunden, oder einfach nur eine CListCtrl deklariert?

    ➡

    estartu schrieb:

    Hast du den Eintrag in der DoDataExchange?
    Sowas:

    DDX_Control(pDX, IDC_LIST1, m_list1);
    

    Uruk-h4j schrieb:

    jup den hab ich...

    🙄

    Uruk, in welcher Funktion steht der Code?



  • Also der Code steht im OnInitDialog()
    dieses DDX-Control(...) steht auch da wos stehen soll
    und die ResourcenID ist auch vergeben.

    Allerdings das mit dem style hab ich noch net gerafft. Muss ich das nun einstellen und wenn ja, wo?? (in der englischen vs2005)



  • ...ja, VC legt standardmäßig natürlich eine Ressourcen-ID für die Liste an, die muß aber mit der ListenKlasse verbunden werden, dies geschieht über den Klassenassistend. Ich vermute ma, daß Du noch ein Anfänger in der MFC-Programmierung bist...wie gesagt, hierbei handelt es sich um eine elementare Arbeitsweise...Woher "weiß" den sonst die Klasse, welche Ressource die bedienen soll 😮



  • Das klingt alles so weit richtig. 😕
    Außer "Erstellen" -> "Alles neu erstellen" fällt mir da nix mehr ein.

    PS: Schau mal in die Properties von dem Listctrl und such da nach was mit Report, in irgendeiner Klappliste muss das sein.


  • Mod

    Welchen Modus hat Dein ListCtrl im Resóurce Editor. Es muss "Report-Mode" sein, sonst geht es nicht mit Spalten.



  • Also in "Meinem" Recourcen Editor" kann ich nix mit Report-Mode einstellen. Da ist nur Die ID, Value und Use drin und ich kann außer dem Namen nichts ändern. Ich hab das Gefühl ich bin zu blöd oder wir reden von verschiendenen dingen...



  • Mach mal ein Foto von dem, wo du gerade geguckt hast.
    ...du redest aber nicht von VC2005 EXPRESS, oder? 😮



  • ...oh, entschuldigung, ich sehe grade das das nicht zutrifft, hätte besser aufpassen sollen...Dann liegt es wohl am Style, das kann im Ressourcen-Editor unter Eigenschaften eingestellt werden, oder im Ressoucen-Quellentext mit LVS_REPORT 😉



  • hab leider keine möglichkeit das bild irgendwo hochzuladen. Und nein ich hab nicht die express...ist die große version

    Aber ich dann dir beschrieben, wie ich hingekommen bin.
    Bei Resourcen auf den dialog und ResourcenIDs.

    Wie gesagt hab die Englische 2005 😞

    UND DIESEN SCH*** RESOURCENEDITOR find ich net 😢



  • Uruk-h4j schrieb:

    hab leider keine möglichkeit das bild irgendwo hochzuladen.

    tinypic.com 😉

    Ich hab hier nur die 2003er, mal schaun wie weit das übertragbar ist.
    Ahhh, ich weiß wo du dich verlaufen hast... 🙄
    So versuch mal:
    Bei Resourcen auf den dialog und den doppelklicken -> die Resource wird angezeigt, das ist der Resourceeditor.
    Nun rechte Maustaste auf das Listcontrol, da Properties wählen -> Eigenschaftenfenster wird eingeblendet bzw. aktiv.

    Da der ganz oberste Tabelleneintrag ist bei mir Ansicht, im Englischen vermutlich View. und da musst du Report wählen.



  • Ich vermisse hier das

    liste.InsertItem(i,"text);
    

    Oder habe ich den Quelltext übersehen? Was nutzt das SetText, ohne das Einfügen von Zeilen?

    Tester2



  • @ estartu:

    Ich bin den weg nach deiner beschreubung gegangen, aber da ist nichts mit View oder LVS_REPORT zum auswählen (leider) Aber wenigstens weiß ich jetzt was ihr mit resourceneditor meintet 😉

    Ich versuch mal nach "style" zu suchen vielleicht find ich ja irgendwas in irgendeinem Quelltext im Projekt....hoffentlich mach ich nichts kaputt...

    @Tester2.

    Ich hab das mit InsertItem() versucht und auch mit allen anderen Inserts die ich gesucht hab.

    m_list1.InsertColumn(0,"SPALTE1", LVCFMT_LEFT, 100);
    	m_list1.InsertColumn(1,"SPALTE2", LVCFMT_LEFT, 100);
    
    	m_list1.InsertItem(0, "Test");
    	m_list1.InsertItem(1, "123");
    
    	//m_list1.SetItemText(0, 0, "Test");
    	//m_list1.SetItemText(0, 1, "123");
    

    hab beides probiert und nichts geht...aber ich hab ja schon rausgefunden, dass ich den style irgendweo ändern muss...


Anmelden zum Antworten