В qml есть 2 версии QtQuick.Controls - собственно 1 и 2. По дефолту ты подключаешь 2 , а в ней стилей нет. В ней кастомизация делается по другому. Пример:
Qt Doc. Как написано здесь
stack чтобы все заработало как ты хочешь нужно использовать QtQuick.Controls 1 версии. Например так:
import QtQuick 2.14
import QtQuick.Window 2.14
import QtQuick.Controls 1.4 as QQC1
import QtQuick.Controls 2.14 as QQC2
import QtQuick.Controls.Styles 1.4
Window {
visible: true
width: 640
height: 480
title: qsTr("Hello World")
QQC1.Slider {
anchors.centerIn: parent
style: SliderStyle {
groove: Rectangle {
implicitWidth: 200
implicitHeight: 8
color: "gray"
radius: 8
}
handle: Rectangle {
anchors.centerIn: parent
color: control.pressed ? "white" : "lightgray"
border.color: "gray"
border.width: 2
implicitWidth: 34
implicitHeight: 34
radius: 12
}
}
}
}