2 Comboboxen in einem Dialog erzeugen bei mir ein Flimmern, wieso?



  • Hallo,

    ich habe einen Dialog mit 2 Comboboxen.

    Ich möchte die beiden Comboboxen selber positionieren mit:

    GetDlgItem(IDC_COMBO1)->SetWindowPos(NULL,20,10,40,20,SWP_NOZORDER);
    

    Mit einer Box geht das noch so einigermaßen.

    Bei 2 Comboboxen kommt es zum Flimmern:

    GetDlgItem(IDC_COMBO1)->SetWindowPos(NULL,20,10,40,20,SWP_NOZORDER);
    GetDlgItem(IDC_COMBO2)->SetWindowPos(NULL,20,60,40,20,SWP_NOZORDER);
    

    Ich habe festgestellt, dass bereits bei einer Box dauerhaft OnPaint aufgerufen wird. Bloß ich habe keine Ahnung wieso und deshalb bitte ich jetzt total verzweifelt um Hilfe.



  • Liegt nicht am SetWindowPos - es sei denn du rufst SetWindowPos andauernd auf. machst du doch nicht, oder?



  • peterchen schrieb:

    Liegt nicht am SetWindowPos - es sei denn du rufst SetWindowPos andauernd auf. machst du doch nicht, oder?

    Leider schon. Sobald ich diesen Befehl benutze wird ON-Paint wieder neu aufgerufen und somit alles neu gezeichnet. Eigenartigerweise passiert dies nur bei diesem Befehl.

    Sinn der Sache ist, dass ich meine Combobox dynamisch positionieren möchte.



  • Ich glaube ich habe den Fehler gefunden. Die Funktion wurde tatsächlich zu oft aufgerufen.


Anmelden zum Antworten