// GrafikaDlg.cpp : implementation file // #include "stdafx.h" #include "Grafika.h" #include "GrafikaDlg.h" #ifdef _DEBUG #define new DEBUG_NEW #endif // CGrafikaDlg dialog CGrafikaDlg::CGrafikaDlg(CWnd* pParent /*=NULL*/) : CDialog(CGrafikaDlg::IDD, pParent) { m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME); } void CGrafikaDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); } BEGIN_MESSAGE_MAP(CGrafikaDlg, CDialog) ON_WM_PAINT() ON_WM_QUERYDRAGICON() //}}AFX_MSG_MAP ON_BN_CLICKED(IDC_BUTTON1, &CGrafikaDlg::OnBnClickedButton1) ON_WM_TIMER() ON_BN_CLICKED(IDC_BUTTON4, &CGrafikaDlg::OnBnClickedButton4) ON_BN_CLICKED(IDC_BUTTON5, &CGrafikaDlg::OnBnClickedButton5) ON_BN_CLICKED(IDC_BUTTON2, &CGrafikaDlg::OnBnClickedButton2) ON_BN_CLICKED(IDC_BUTTON3, &CGrafikaDlg::OnBnClickedButton3) END_MESSAGE_MAP() // CGrafikaDlg message handlers BOOL CGrafikaDlg::OnInitDialog() { CDialog::OnInitDialog(); SetTimer(1,1000,NULL); bitmapa = new CBitmap; HANDLE hBitmapa = LoadImage(NULL,"aaa.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE); if(hBitmapa==NULL) MessageBox("Nie dalo sie wczytac bitmapy","Siara"); bitmapa->Attach(hBitmapa); // Set the icon for this dialog. The framework does this automatically // when the application's main window is not a dialog SetIcon(m_hIcon, TRUE); // Set big icon SetIcon(m_hIcon, FALSE); // Set small icon // TODO: Add extra initialization here return TRUE; // return TRUE unless you set the focus to a control } // If you add a minimize button to your dialog, you will need the code below // to draw the icon. For MFC applications using the document/view model, // this is automatically done for you by the framework. void CGrafikaDlg::OnPaint() { CPaintDC kontekst(this); if(wybrano_2=="1") { kontekst.Rectangle(0,0,100,100); } if(wybrano_3=="1") { CDC* kopia = new CDC; kopia->CreateCompatibleDC(&kontekst); CBitmap *wynik = kopia->SelectObject(bitmapa); if(wynik==NULL) MessageBox("SelectObject nie powiodlo sie","Siara"); kontekst.BitBlt(0,0,300,225,kopia,0,0,SRCCOPY); kopia->SelectObject(wynik); delete kopia; } if (IsIconic()) { CPaintDC dc(this); // device context for painting SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0); // Center icon in client rectangle int cxIcon = GetSystemMetrics(SM_CXICON); int cyIcon = GetSystemMetrics(SM_CYICON); CRect rect; GetClientRect(&rect); int x = (rect.Width() - cxIcon + 1) / 2; int y = (rect.Height() - cyIcon + 1) / 2; // Draw the icon dc.DrawIcon(x, y, m_hIcon); } else { CDialog::OnPaint(); } } // The system calls this function to obtain the cursor to display while the user drags // the minimized window. HCURSOR CGrafikaDlg::OnQueryDragIcon() { return static_cast<HCURSOR>(m_hIcon); } void CGrafikaDlg::OnBnClickedButton1() { CDC* wsk_do_kontekstu = GetDC(); wsk_do_kontekstu->Rectangle(0,0,100,100); // TODO: Add your control notification handler code here } void CGrafikaDlg::OnTimer(UINT_PTR nIDEvent) { CString belka; GetWindowText(belka); belka +="."; SetWindowText(belka); // TODO: Add your message handler code here and/or call default CDialog::OnTimer(nIDEvent); } void CGrafikaDlg::OnBnClickedButton4() { KillTimer(1); // TODO: Add your control notification handler code here } void CGrafikaDlg::OnBnClickedButton5() { OnOK(); // TODO: Add your control notification handler code here } void CGrafikaDlg::OnBnClickedButton2() { if(wybrano_2=="1") { wybrano_2="0"; Invalidate(true); } else { wybrano_2="1"; OnBnClickedButton1(); } // TODO: Add your control notification handler code here } void CGrafikaDlg::OnBnClickedButton3() { if(wybrano_3=="1") { wybrano_3="0"; Invalidate(true); } else { wybrano_3="1"; Invalidate(false); } // TODO: Add your control notification handler code here }
pawkos5