Programlama | Programlama Dilleri | C Programlama Dili |C++

Anasayfa Programlama C++ Builder Çizgi Çizim İşlemleri (Canvas)


Çizgi Çizim İşlemleri (Canvas)

AÇIKLAMA

C++ Builder 6 ile uyumludur. Bu programda canvas yani çizim işlemleri üzerinde durulmuştur, çizim işlemlerinde ise çizgi çizme işlemi seçilmiştir. Çizim işleminde ekranda mouse'un sol tuşu ile bir noktaya basılarak, basılıp tutulduğu sürece başlangıçta tıkladığınız noktadan ekranda gezdiğiniz her noktaya çizgi çeker. Mouse'un tuşunu bıraktığınızda çizim işlemi sona ermektedir. Bu işlemler için MouseDown,MouseMove,MouseUp fonksiyonları kullanılmıştır.

Programın Tamamını Aşağıdaki Linkten İndirebilirsiniz

Linki Görebilmeniz İçin Üye Olmanız Gerekmektedir...

Üye Kayıt 

Program Kodu:

Unit1.cpp

  1. //---------------------------------------------------------------------------
  2.  
  3. #include <vcl.h>
  4. #pragma hdrstop
  5.  
  6. #include "Unit1.h"
  7. //---------------------------------------------------------------------------
  8. #pragma package(smart_init)
  9. #pragma resource "*.dfm"
  10. TForm1 *Form1;
  11. //---------------------------------------------------------------------------
  12. __fastcall TForm1::TForm1(TComponent* Owner)
  13.         : TForm(Owner)
  14. {
  15. ilk_cizim=false;
  16. }
  17. //---------------------------------------------------------------------------
  18. void __fastcall TForm1::cizgi_ciz()
  19. {
  20.  Canvas->MoveTo(ilk_cizgi_basi.x,ilk_cizgi_basi.y);
  21.  Canvas->LineTo(ilk_cizgi_uz.x,ilk_cizgi_uz.y);
  22. }
  23. //---------------------------------------------------------------------------
  24. void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,
  25.       TShiftState Shift, int X, int Y)
  26. {
  27. ilk_cizgi_basi.x=X;
  28. ilk_cizgi_basi.y=Y;
  29. ilk_cizgi=true;
  30. ilk_cizim=true;
  31. }
  32. //---------------------------------------------------------------------------
  33.  
  34. void __fastcall TForm1::FormMouseUp(TObject *Sender, TMouseButton Button,
  35.       TShiftState Shift, int X, int Y)
  36. {
  37. ilk_cizgi_uz.x=X;
  38. ilk_cizgi_uz.y=Y;
  39. ilk_cizim=false;
  40. cizgi_ciz();
  41. Canvas->Pen->Mode=pmCopy;
  42. }
  43. //---------------------------------------------------------------------------
  44.  
  45. void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift,
  46.       int X, int Y)
  47. {
  48. if(ilk_cizim==true)
  49. {
  50. Canvas->Pen->Mode=pmNotXor;
  51. ilk_cizgi_uz.x=X;
  52. ilk_cizgi_uz.y=Y;
  53. cizgi_ciz();
  54. }
  55. }
  56. //---------------------------------------------------------------------------
  57.  
  58.  
  59.  
  60.  
  61.  

Yorumlar (0)
Sadece kayıtlı kullanıcılar yorum yazabilir!
Son Güncelleme ( Pazar, 02 Eylül 2012 23:49 )