I don't think there is an existing method for this, but here's two approaches that work:
1.) Subclass QTableWidgetItem
MyTableWidgetItem::MyTableWidgetItem() :
QTableWidgetItem()
{
setTextAlignment( Qt::AlignLeft );
}
However, this is probably a bit overkill for just a single setting + you might want to overload all four constructors of QTableWidgetItem.
2.) Another approach is using a factory instead of calling new:
Note: The linked article talks about unit testing, but there are many more advantages by doing that.
QTableWidgetItem* MyTableWidgetFactory::createTableWidgetItem( const QString& text ) const
{
QTableWidgetItem* item = new QTableWidgetItem( text );
item->setTextAlignment( Qt::AlignLeft );
return item;
}
Then instead of
QTableWidgetItem* myItem = new QTableWidgetItem( "foo" );
item->setTextAlignment( Qt::AlignLeft );
you can do
QTableWidgetItem* myItem = myFactory->createTableWidgetItem( "foo" );
where myFactory
is an object of MyTableWidgetFactory
.