用qss是最简单的。
widget->setStylesheet("QWidget{border-image: url(your image's path)}");
不过如果控件是你从QWidget派生的话需要加上这么一段
void CustomWidget::paintEvent(QPaintEvent *)
{
QStyleOption opt;
opt.init(this);
QPainter p(this);
style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);
}