Win32 API Diagramm

elfvyn

Mitglied
Hi ich möchte ein Dialogfenster ertsellen in dem ich ein dynamisches Diagramm anzeige. Das ganze soll dann mal etwa so aussehen wie das Performance- oder LAN-Diagramm vom Taskmanager. Habe da jetzt schon ein bischen mit linien ziehen etc rumgespielt ist aber doch schon relativ viel aufwand. Gibts denn da was fertiges? Eine Klasse die das schon drauf hat oder so? Hab schon gesucht aber ihrgendwie weiss ich garnicht nach was ich da suchen soll... Wie heißt denn so ein Diagramm Fenster?
 
Also wie gesagt hab ich mit Linien ziehen und so rumgespielt und das funktioniert ja auch aber das habe ich koplett selbst hochgezogen....

So soll das ganze mal aussehen:
http://www.codeguru.com/Cpp/controls/controls/chartingandanaloguecontrols/article.php/c2187/

Das Bsp. habe ich gerade gefunden ist aber halt MFC und ich brauchs ohne!

Hier ist das mal was.. aber ich denke mal das ich neu beginnen werde, da es viel zu aufwendig wäre das ganze so hochzuziehen! Der Ausschnitt wird auch so nicht funktionieren aber ich kann hier nunmal jetzt nicht mein ganzes Prog hinstellen.
Value ist der Wert den die Kurve annimmt und wird von Außerhalb gesteuert.

Code:
  static         x=0;
  static         oldx=0;
  static         oldy=0;
  PAINTSTRUCT    ps;
  HDC            hDC;
  RECT           rect;

case WM_PAINT:
    { 

        GetClientRect(hWnd,&rect);
          
      if(x==0)
      {
        x=rect.right-10;
        oldx=rect.right-10;
        oldy=rect.right-10;
      }
         hDC = BeginPaint(hWnd, &ps);
         {
            HBRUSH hOldBrush = (HBRUSH)SelectObject(hDC, CreateSolidBrush(RGB(255,255,255)));
            
            MoveToEx(hDC, oldx,oldy, NULL);
            LineTo(  hDC, x,Value);

            oldx=x;
            oldy=Value;
            DeleteObject(SelectObject(hDC, hOldBrush));
         }
         EndPaint(hWnd, &ps);
         x--;
         return 0;
    }
    break;
 
Da MFC ja auf Win32 aufsetzt, kannst du dir ja bestimmt das eine oder andere oder komplette Schnipsel rausholen. Für dich interessant sind wahrscheinlich die OnPaint-Handler.
 
Zurück