Class: QgsScaleComboBox¶
A combobox which lets the user select map scale from predefined list and highlights nearest to current scale value.
Class Hierarchy¶
Base classes¶
- class qgis.gui.QgsScaleComboBox[source]¶
Bases:
QComboBox- __init__(parent: QWidget | None = None)
Constructor for QgsScaleComboBox.
- Parameters:
parent (Optional[QWidget] = None)
- class RatioMode(*values)¶
Bases:
IntEnumScale ratio modes.
Added in version 4.0.
ForceUnitNumerator: Default mode, forces the scale numerator to be 1, e.g. “1:1000”Flexible: Allows numerator values other than 1, e.g: “2:3”.
- Flexible = 1¶
- ForceUnitNumerator = 0¶
- allowNull(self) bool[source]¶
Returns
Trueif the combobox can be set to a NULL value.See also
See also
See also
Added in version 3.8.
- Return type:
bool
- isNull(self) bool[source]¶
Returns
Trueif the combo box is currently set to a “null” value.See also
See also
Added in version 3.8.
- Return type:
bool
- minScale(self) float[source]¶
Returns the minimum scale, or 0 if no minimum scale set. The
scalevalue indicates the scale denominator, e.g. 1000.0 for a 1:1000 map. Any scale lower than the minimum scale will automatically be converted to the minimum scale. Except for 0 which is always allowed.- Return type:
float
- ratioMode(self) QgsScaleComboBox.RatioMode[source]¶
Returns the ratio mode for the scale.
See also
Added in version 4.0.
- Return type:
- signal ratioModeChanged[source]¶
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- scale(self) float[source]¶
Returns the selected scale as a double. The scale value indicates the scale denominator, e.g. 1000.0 for a 1:1000 map.
See also
- Return type:
float
- signal scaleChanged[source]¶
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- scaleString(self) str[source]¶
Returns the selected scale as a string, e.g. “1:150”.
See also
- Return type:
str
- setAllowNull(self, allowNull: bool)[source]¶
Sets whether the scale combobox can be set to a NULL value.
See also
See also
See also
Added in version 3.8.
- Parameters:
allowNull (bool)
- setMinScale(self, scale: float)[source]¶
Set the minimum allowed
scale. Set to 0 to disable the minimum scale. Thescalevalue indicates the scale denominator, e.g. 1000.0 for a 1:1000 map. Any scale lower than the minimum scale will automatically be converted to the minimum scale. Except for 0 which is always allowed.- Parameters:
scale (float)
- setNull(self)[source]¶
Sets the combo box to the null value.
This only has an effect if
allowNull()isTrue.See also
See also
Added in version 3.8.
- setPredefinedScales(self, scales: Iterable[float])[source]¶
Sets the list of predefined
scalesto show in the combobox. List elements are expected to be scale denominators, e.g. 1000.0 for a 1:1000 map.If
scalesis empty then the default user scale options will be used instead.Added in version 3.38.
- Parameters:
scales (Iterable[float])
- setRatioMode(self, mode: QgsScaleComboBox.RatioMode)[source]¶
Sets the ratio
modefor the scale.See also
Added in version 4.0.
- Parameters:
mode (QgsScaleComboBox.RatioMode)
- setScale(self, scale: float)[source]¶
Set the selected scale from a double. The
scalevalue indicates the scale denominator, e.g. 1000.0 for a 1:1000 map.See also
- Parameters:
scale (float)
- setScaleString(self, string: str | None) bool[source]¶
Set the selected scale from a
string, e.g. “1:150”.See also
- Parameters:
string (Optional[str])
- Return type:
bool
- static toDouble(string: str | None)[source]¶
Helper function to convert a scale
stringto double. The returned value indicates the scale denominator, e.g. 1000.0 for a 1:1000 map. If specified,okwill be set toTrueif the string was successfully interpreted as a scale.See also
- Parameters:
string (Optional[str]) -> (float)
- static toString(scale: float, mode: QgsScaleComboBox.RatioMode = QgsScaleComboBox.RatioMode.ForceUnitNumerator) str[source]¶
Helper function to convert a
scaledouble to scale string.The returned string will be rounded (e.g. 1:1000, not 1:1000.345).
- Parameters:
scale (float) – scale value indicating the scale denominator, e.g. 1000.0 for a 1:1000 map.
mode (QgsScaleComboBox.RatioMode = QgsScaleComboBox.RatioMode.ForceUnitNumerator) – ratio mode (since QGIS 4.0)
See also
- Return type:
str