Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Canvas

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
02.09.2003, 17:26 Uhr
~Einsteiger
Gast


Hallo!

Ich brauche ein Steuerelement, das so ähnlich ist wie das Canvas in Java - also einfach eine einfache Fläche wo ich was hineinzeichnen kann.
Habe es mit CCanvas probiert, aber diese Klasse gibt es in der MFC nicht.

Kennt jemand so ein Control? (direkt in das Fenster will ich nicht zeichnen)

Danke!


mfg
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
02.09.2003, 17:29 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


Es gibt so ein picture-controlfeld in das kann man gut zeichen.
Ist gleich das erste Steuerelement was du auswählen kannst wenn du dir die Controls im Ressourceeditor anzeigen lässt
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
02.09.2003, 18:01 Uhr
~Einsteiger
Gast


Hallo!

Und wie heißt die Klasse vom diesem Control? Ist das zufällig CPictureHolder?
Will es nämlich nicht in ein per Resourceneditor erstelltes Dialogfeld einbinden, sondern direkt in mein (per Code erstelltes) Hauptfenster.

mfg
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
02.09.2003, 18:10 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


Würde ich auch vermuten, bin aber leider überfragt, da ich dieses Steuerelement bisher immer mit Hilfe des Ressourceneditors eigefügt habe wenn ichs denn gebraucht habe.
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
02.09.2003, 18:21 Uhr
0xdeadbeef
Gott
(Operator)


In der MFC kannst du in jedes Fenster zeichnen, allerdings musst du dabei den Umweg um einen Device Context machen. Welchen Device Context du verwenden musst, hängt davon ab, wo im Programm du dich befindest. Unterschieden wird im wesentlichen zwischen der Abarbeitung eines WM_PAINT-Signals und allem anderen. Dementsprechend sieht das so aus:

C++:
//MyCanvas.h
class CMyCanvas : public CWnd {
  afx_msg void OnPaint();
  void draw_something_on_self();
  DECLARE_MESSAGE_MAP()
};



C++:
//MyCanvas.cpp
#include "MyCanvas.h"

BEGIN_MESSAGE_MAP(CMyCanvas, CWnd)
  ON_WM_PAINT()
END_MESSAGE_MAP()

void CMyCanvas::OnPaint() {
  CPaintDC dc(this);
  //in dc zeichnen
}

void CMyCanvas::draw_something_on_self() {
  CClientDC dc(this);
  //in dc zeichnen
}



C++:
//some_other.cpp
#include "MyCanvas.h"

void draw_something_on(CMyCanvas *mc) {
  CClientDC dc(mc);
  //in dc zeichnen
}


--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: