Люди, здравствуйте. Вот моя проблемка:
Делаю обьект CStatic и вывожу его в окне. Проблема состоит в следующем.Необходимо вывести график в этом элементе, функцию которого я задаю формулой.Проблема состоит именно в том, как реализовать такой график, чтобы он масштабировался в этом элементе.
Заранее спасибо за ответ.
Здравствуйте, bilas, Вы писали:
B>Люди, здравствуйте. Вот моя проблемка: B>Делаю обьект CStatic и вывожу его в окне. Проблема состоит в следующем.Необходимо вывести график в этом элементе, функцию которого я задаю формулой.Проблема состоит именно в том, как реализовать такой график, чтобы он масштабировался в этом элементе.
ИМХО Вам стОит написать свой контрол, производный от CWnd. Или поискать на Code Project по словам "graph", "chart" — там много такого добра.
Здравствуйте, SchweinDeBurg, Вы писали:
SDB>Здравствуйте, bilas, Вы писали:
B>>Люди, здравствуйте. Вот моя проблемка: B>>Делаю обьект CStatic и вывожу его в окне. Проблема состоит в следующем.Необходимо вывести график в этом элементе, функцию которого я задаю формулой.Проблема состоит именно в том, как реализовать такой график, чтобы он масштабировался в этом элементе.
SDB>ИМХО Вам стОит написать свой контрол, производный от CWnd. Или поискать на Code Project по словам "graph", "chart" — там много такого добра.
Мм..спасибо за ответ, но нельзя ли как-нить попроще реализовать это, может есть какой-ниб легкий способ?Спасибо.
Здравствуйте, bilas, Вы писали:
B>Здравствуйте, SchweinDeBurg, Вы писали:
SDB>>Здравствуйте, bilas, Вы писали:
B>>>Люди, здравствуйте. Вот моя проблемка: B>>>Делаю обьект CStatic и вывожу его в окне. Проблема состоит в следующем.Необходимо вывести график в этом элементе, функцию которого я задаю формулой.Проблема состоит именно в том, как реализовать такой график, чтобы он масштабировался в этом элементе.
SDB>>ИМХО Вам стОит написать свой контрол, производный от CWnd. Или поискать на Code Project по словам "graph", "chart" — там много такого добра.
B>Мм..спасибо за ответ, но нельзя ли как-нить попроще реализовать это, может есть какой-ниб легкий способ?Спасибо.
Способа легче, чем скачать с CP десяток классов и выбрать по вкусу, я, честно говоря, не знаю. Да и руками это пишется не так уж долго.
Здравствуйте, Amon-RA, Вы писали:
AR>Здравствуйте, bilas, Вы писали:
B>>Мм..спасибо за ответ, но нельзя ли как-нить попроще реализовать это, может есть какой-ниб легкий способ?Спасибо.
AR>А это несложно. Создаешь наследника от CWnd. Рисуешь в нем что надо. Потом в диалоге пишешь так:
AR>
AR>BOOL CDlg::OnInitDialog()
AR>{
AR> CDialog::OnInitDialog();
AR> int nTop, nLeft;
AR> CRect Rect;
AR> CWnd* pWnd = GetDlgItem(IDC_YOUR_STATIC);
pWnd->>GetWindowRect(&Rect);
pWnd->>SetWindowPos(NULL, 0, 0, 0, 0, SWP_HIDEWINDOW);
AR> nTop = Rect.top-2*::GetSystemMetrics(SM_CYDLGFRAME)-::GetSystemMetrics(SM_CYCAPTION);
AR> nLeft = Rect.left;
AR> m_gr.Create(NULL, NULL, WS_CHILD|WS_VISIBLE, CRect(0, 0, 0, 0), this, 1);
AR> m_gr.SetWindowPos(&wndTop, nLeft, nTop, Rect.Width(), Rect.Height(), SWP_SHOWWINDOW);
AR> return TRUE; // return TRUE unless you set the focus to a control
AR> // EXCEPTION: OCX Property Pages should return FALSE
AR>}
AR>
AR>Где m_gr — твой график
Спасибо большое, ребята. Я только начинающий, поэтому попробую разобраться. Спасибо большое за код и помощь. Но если что — я ещё раз тут запостю сообщение, ок?
Здравствуйте, Amon-RA, Вы писали:
AR>Здравствуйте, bilas, Вы писали:
B>>Мм..спасибо за ответ, но нельзя ли как-нить попроще реализовать это, может есть какой-ниб легкий способ?Спасибо.
AR>А это несложно. Создаешь наследника от CWnd. Рисуешь в нем что надо. Потом в диалоге пишешь так:
AR>
AR>BOOL CDlg::OnInitDialog()
AR>{
AR> CDialog::OnInitDialog();
AR> int nTop, nLeft;
AR> CRect Rect;
AR> CWnd* pWnd = GetDlgItem(IDC_YOUR_STATIC);
pWnd->>GetWindowRect(&Rect);
pWnd->>SetWindowPos(NULL, 0, 0, 0, 0, SWP_HIDEWINDOW);
AR> nTop = Rect.top-2*::GetSystemMetrics(SM_CYDLGFRAME)-::GetSystemMetrics(SM_CYCAPTION);
AR> nLeft = Rect.left;
AR> m_gr.Create(NULL, NULL, WS_CHILD|WS_VISIBLE, CRect(0, 0, 0, 0), this, 1);
AR> m_gr.SetWindowPos(&wndTop, nLeft, nTop, Rect.Width(), Rect.Height(), SWP_SHOWWINDOW);
AR> return TRUE; // return TRUE unless you set the focus to a control
AR> // EXCEPTION: OCX Property Pages should return FALSE
AR>}
AR>
AR>Где m_gr — твой график
2Amon-RA:
У меня статик должен разместиться в потомке CFormView.А m_gr — это обьект моего СStatic'а?