diff --git a/lcl/interfaces/qt/qtwidgets.pas b/lcl/interfaces/qt/qtwidgets.pas index ce5fb481c3..7c4ac40cc7 100644 --- a/lcl/interfaces/qt/qtwidgets.pas +++ b/lcl/interfaces/qt/qtwidgets.pas @@ -53,7 +53,8 @@ type ccwComboBox, ccwTreeWidget, ccwAbstractScrollArea, - ccwScrollingWinControl); + ccwScrollingWinControl, + ccwTabWidget); TQtGroupBoxType = (tgbtNormal, tgbtCheckGroup, @@ -12192,11 +12193,19 @@ end; procedure TQtPage.setIcon(const AIcon: QIconH); var AParent: QTabWidgetH; + TabWidget: TQtTabWidget; begin FIcon := AIcon; AParent := getTabWidget; if AParent <> nil then - QTabWidget_setTabIcon(AParent, getIndex, AIcon); + begin + if ChildOfComplexWidget = ccwTabWidget then + begin + TabWidget := TQtTabWidget(LCLObject.Parent.Handle); + TabWidget.setTabIcon(TabWidget.indexOf(Widget), AIcon); + end else + QTabWidget_setTabIcon(AParent, getIndex, AIcon); + end; end; procedure TQtPage.setText(const W: WideString); diff --git a/lcl/interfaces/qt/qtwsextctrls.pp b/lcl/interfaces/qt/qtwsextctrls.pp index f596dcfd7e..9d140debd9 100644 --- a/lcl/interfaces/qt/qtwsextctrls.pp +++ b/lcl/interfaces/qt/qtwsextctrls.pp @@ -321,6 +321,7 @@ begin QtTabWidget.insertTab(AIndex, TQtPage(AChild.Handle).Widget, GetUtf8String(AChild.Caption)); QtTabWidget.setUpdatesEnabled(True); + TQtPage(AChild.Handle).ChildOfComplexWidget := ccwTabWidget; TQtWsCustomPage.UpdateProperties(AChild); end;