Q:

QListWidgetItem выровнять по центру

У меня есть список QListWidget, состоящий из нескольких items. 
    QHBoxLayout* h_layout = new QHBoxLayout;
    h_layout->setMargin( 0 );
    menu_list_widget_  = new QListWidget;
    menu_list_widget_->setFlow(QListView::TopToBottom);
    menu_list_widget_->setViewMode(QListView::IconMode);
    menu_list_widget_->setMovement(QListView::Static);
    menu_list_widget_->setFixedWidth( 100 );

    QListWidgetItem* lwi;
    menu_list_widget_->addItem( lwi = new QListWidgetItem(QIcon(":/icons/color_pencils.png"), "Цвета") );
    lwi->setTextAlignment(Qt::AlignCenter);
    menu_list_widget_->addItem( lwi = new QListWidgetItem(QIcon(":/icons/font.png"), "Шрифт") );
    lwi->setTextAlignment(Qt::AlignCenter);
    lwi->setHidden( true );
// и т.д.
    h_layout->addWidget(menu_list_widget_, 0, Qt::AlignHCenter)

Список выглядит так:

Не понимаю, почему нет выравнивания по центру в каждой строке списка, как его добиться?

A:

Надо задать ширину добавляемого элемента равной ширине самого листа, у меня работает:
QListWidgetItem* item = new QListWidgetItem(...);
item->setSizeHint(QSize(listWidget->width() - 4, 50));

