Das OFFIZIELLE PROFAN SUPPORT FORUM
Einsteigerfragen
PROFAN-Programmierung
Helfer & Tools
Anregungen & Vorschläge
PROFAN-NEWS
Die Regeln!
1 - Einsteigerfragen

 Neues Thema  |  Zur Übersicht  |  Suchen  |  Einloggen   Vorherige Nachricht  |  Nächste Nachricht 
 Re: Toolbar + Zeichnen
Autor: Matthias Griesbach (---.customers.d1-online.com)
Datum:   18.05.15 10:23

Mit der SubClassProc klappt das ganz gut, wenn auch mit einer Krücke siehe Code.



$H Messages.ph
 $H Windows.ph
 $H COMMCTRL.PH
 
 Declare Handle hToolBar, hBild
  Declare Int ende, String datei
  
  Proc Resize
   SetWindowPos hToolbar = 0, 0 - 0,0; 0
   If %MouseKey <> 1
     DrawHelp()
   EndIf
 EndProc
  
 SubClassProc
   If SubClassMessage(%hWnd, ~wm_sizing)
     Resize
     Set("WinProc", 1)
   ElseIf subClassMessage(%hWnd,~wm_size)
     Resize
     Set("WinProc", 0)
   EndIF
   'Krücke! 
   'Testen ob ein Farbpunkt aus dem Gemalten auf der Toolbar vorhanden ist.
   'Wenn nicht, dann neu malen.
   Case GetPixel(310,7) <> RGB(255,0,0) : DrawHelp
 EndProc
  ende = 0
  Set("AutoPaint", 1)
  
  WindowTitle "Bestell - Formular"
  Window 860, 480
  
  hBild = @Create("HPIC", 0, "TOOLBAR32")
  hToolbar = @Create("TOOLBAR", %hWnd, hbild, 0, 32, 2000, 1)
  @Toolbar("AddTextButton", hToolBar, 13, 101, "Speichern", "Speichern")
  @Toolbar("AddTextButton", hToolBar, 12, 102, "Laden", "Laden")
  @Toolbar("AddTextButton", hToolBar, 49, 103, "Ende", "EXIT")  
  
  DrawHelp()
  AddHotKey 101, 113, 0   ' F2 = Speichern
  AddHotKey 102, 114, 0   ' F3 = Laden
  
  SubClass %HWnd, 1
  
  WhileNot ende
     WaitInput
     Case %Key = 2 : ende = 1
     Case %wmPaint : DrawHelp()
     If @MenuItem(101)
        datei = SaveFile$(%HWnd, "Datei speichern", "CSV-Dateien|*.CSV", 1)
     ElseIf @MenuItem(102)
        datei = LoadFile$(%HWnd, "Datei laden", "CSV-Dateien|*.CSV")
     ElseIf @MenuItem(103)
         ende = 1
     EndIf    
  EndWhile
  
  SubClass %HWnd, 0
  
  Proc DrawHelp
  Declare Handle bild2
  Mcls 100, 50, RGB(255,0,0)
  bild2 = @Create("hSizedPic", 0, "&MEMBMP", 100, 50, 0)
  StartPaint hToolbar
     DrawPic bild2, 300, 5, 0
     DrawText 450, 10, "F2 = Speichern"
     DrawText 450, 30, "F3 = Laden"
  EndPaint
  EndProc
  End
  


Ich würde aber alles in eine Speicherbitmap malen, und dann MCopy verwenden.

Beste Grüße
Matthias

XProfan X2, Windows 7

 Beitrag beantworten  |  Foren-Liste  |  Alle Antworten   Neuerer Beitrag  |  Älteres Thema 

 Beiträge Autor  Datum
 Toolbar + Zeichnen  Neu
Heinz Brill 17.05.15 11:37 
 Re: Toolbar + Zeichnen  Neu
Jürgen Albrecht 17.05.15 20:16 
 Re: Toolbar + Zeichnen  Neu
Matthias Griesbach 18.05.15 10:23 
 Re: Toolbar + Zeichnen  Neu
Jörg Sellmeyer 18.05.15 14:11 
 Re: Toolbar + Zeichnen  Neu
Matthias Griesbach 18.05.15 16:19 
 Re: Toolbar + Zeichnen  Neu
Jörg Sellmeyer 18.05.15 22:23 
 Re: Toolbar + Zeichnen  Neu
Heinz Brill 18.05.15 18:31 
 Re: Toolbar + Zeichnen  Neu
Jörg Sellmeyer 18.05.15 22:20 
 Re: Toolbar + Zeichnen  Neu
Heinz Brill 19.05.15 19:22 


 Foren-Liste  |  Zur Registrierung 
 Benutzerlogin
 Benutzername:
 Passwort:
 Login-Daten speichern:
   
 Passwort vergessen?
E-Mail-Adresse oder Username unten eingeben. Dann wird Dir per e-Mail ein neues Passwort zugeschickt.

phorum.org