本文整理汇总了C++中BGridLayout::CountColumns方法的典型用法代码示例。如果您正苦于以下问题:C++ BGridLayout::CountColumns方法的具体用法?C++ BGridLayout::CountColumns怎么用?C++ BGridLayout::CountColumns使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BGridLayout
的用法示例。
在下文中一共展示了BGridLayout::CountColumns方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: r
//.........这里部分代码省略.........
layoutItem->SetExplicitMinSize( BSize( ( B_V_SCROLL_BAR_WIDTH * 2 ), r.Height() ) );
gridLayout->SetMaxColumnWidth( 0, r.Width()-70 );
gridLayout->SetMaxColumnWidth( 1, r.Width()-66 );
// Add categories to the list
PopulateCategoriesView();
/* Creating the buttons */
// Add new category button
toSend = new BMessage( kAddNewCategory );
addButton = new BButton( BRect( 0, 0, 1, 1),
"Add category",
"Add category",
toSend,
B_FOLLOW_H_CENTER | B_FOLLOW_V_CENTER );
if ( !toSend || !addButton ) {
/* Panic! */
exit( 1 );
}
addButton->ResizeToPreferred();
addButton->SetTarget( this );
layoutItem = gridLayout->AddView( addButton, 1, 0, 1, 1 );
layoutItem->SetExplicitAlignment( BAlignment( B_ALIGN_HORIZONTAL_CENTER, B_ALIGN_VERTICAL_CENTER ) );
// Edit old category button
toSend = new BMessage( kCategoryInvoked );
editButton = new BButton( BRect( 0, 0, 1, 1),
"Edit category",
"Edit category",
toSend,
B_FOLLOW_H_CENTER | B_FOLLOW_V_CENTER );
if ( !toSend || !editButton ) {
/* Panic! */
exit( 1 );
}
editButton->ResizeToPreferred();
editButton->SetTarget( this );
layoutItem = gridLayout->AddView( editButton, 1, 1, 1, 1 );
layoutItem->SetExplicitAlignment( BAlignment( B_ALIGN_HORIZONTAL_CENTER, B_ALIGN_VERTICAL_CENTER ) );
// Edit category button is disabled by default;
// it's enabled when user chooses a category in the list.
editButton->SetEnabled( false );
/* Creating the menu of merging a category */
// Create a label
BGroupLayout* groupLayout = new BGroupLayout( B_VERTICAL );
if ( !groupLayout )
{
/* Panic! */
exit( 1 );
}
gridLayout->AddItem( groupLayout, 1, 2, 1, 1 );
groupLayout->SetExplicitAlignment( BAlignment( B_ALIGN_LEFT, B_ALIGN_TOP ) );
mergeToLabel = new BStringView( BRect( 0, 0, 1, 1 ),
"Merge to label",
"Merge selected category into:" );
if ( !mergeToLabel ) {
/* Panic! */
exit( 1 );
}
mergeToLabel->ResizeToPreferred();
layoutItem = groupLayout->AddView( mergeToLabel );
layoutItem->SetExplicitAlignment( BAlignment( B_ALIGN_LEFT, B_ALIGN_TOP ) );
// Create the menu
BMessage templateMessage( kMergeIntoCategory );
listMenu = new CategoryMenu( "Select category to merge to:", true, &templateMessage );
if ( !listMenu )
{
/* Panic! */
exit( 1 );
}
menuField = new BMenuField( mergeToLabel->Bounds(),
"Merge to field",
NULL,
listMenu );
if ( !menuField ) {
/* Panic! */
exit( 1 );
}
menuField->SetDivider( 0 );
// Just like the "Edit" button above, the menu is initially disabled.
menuField->SetEnabled( false );
layoutItem = groupLayout->AddView( menuField );
layoutItem->SetExplicitAlignment( BAlignment( B_ALIGN_USE_FULL_WIDTH, B_ALIGN_TOP ) );
for ( int index = 0; index < gridLayout->CountColumns(); ++index )
{
gridLayout->SetColumnWeight( index, 1 );
}
for ( int index = 0; index < gridLayout->CountRows(); ++index )
{
gridLayout->SetRowWeight( index, 1 );
}
gridLayout->InvalidateLayout();
} // <-- end of constructor of CategoryPreferencesView