本文整理汇总了C++中wxWindow::GetBestSize方法的典型用法代码示例。如果您正苦于以下问题:C++ wxWindow::GetBestSize方法的具体用法?C++ wxWindow::GetBestSize怎么用?C++ wxWindow::GetBestSize使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类wxWindow
的用法示例。
在下文中一共展示了wxWindow::GetBestSize方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: BestSize
void SetSizeTestCase::BestSize()
{
CPPUNIT_ASSERT_EQUAL( wxSize(50, 250), m_win->GetBestSize() );
m_win->SetMinSize(wxSize(100, 100));
CPPUNIT_ASSERT_EQUAL( wxSize(100, 250), m_win->GetBestSize() );
m_win->SetMaxSize(wxSize(200, 200));
CPPUNIT_ASSERT_EQUAL( wxSize(100, 200), m_win->GetBestSize() );
}
示例2: ResizeChild
void wxDynamicSashWindowLeaf::ResizeChild(const wxSize& size)
{
if (m_child)
{
if (m_impl->m_window->HasFlag(wxDS_MANAGE_SCROLLBARS))
{
wxSize best_size = m_child->GetBestSize();
if (best_size.GetWidth() < size.GetWidth())
best_size.SetWidth(size.GetWidth());
if (best_size.GetHeight() < size.GetHeight())
best_size.SetHeight(size.GetHeight());
m_child->SetSize(best_size);
int hpos = m_hscroll->GetThumbPosition();
int vpos = m_vscroll->GetThumbPosition();
if (hpos < 0)
hpos = 0;
if (vpos < 0)
vpos = 0;
if (hpos > best_size.GetWidth() - size.GetWidth())
hpos = best_size.GetWidth() - size.GetWidth();
if (vpos > best_size.GetHeight() - size.GetHeight())
vpos = best_size.GetHeight() - size.GetHeight();
m_hscroll->SetScrollbar(hpos, size.GetWidth(),
best_size.GetWidth(), size.GetWidth());
m_vscroll->SetScrollbar(vpos, size.GetHeight(),
best_size.GetHeight(), size.GetHeight());
// Umm, the scrollbars are doing something insane under GTK+ and subtracting
// one from the position I pass in. This works around that.
m_hscroll->SetThumbPosition(hpos + hpos - m_hscroll->GetThumbPosition());
m_vscroll->SetThumbPosition(vpos + vpos - m_vscroll->GetThumbPosition());
wxPoint pos = m_child->GetPosition();
m_viewport->ScrollWindow(-hpos - pos.x, -vpos - pos.y);
}
else // !wxDS_MANAGE_SCROLLBARS
{
m_child->SetSize(size);
}
}
}