Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用BoxLayout且无绝对坐标时在kivy中放置小部件_Python_Python 3.x_Kivy - Fatal编程技术网

Python 使用BoxLayout且无绝对坐标时在kivy中放置小部件

Python 使用BoxLayout且无绝对坐标时在kivy中放置小部件,python,python-3.x,kivy,Python,Python 3.x,Kivy,我想创建一些参数的视图。参数具有名称、说明和值。这应该类似于: 参数名称、滑块、数字显示 描述 在kivy中,您可以使用kv语言的BoxLayout: BoxLayout: orientation: 'vertical' BoxLayout: orientation: 'horizontal' Label: text: 'warp power' Slider: id: pwSlider

我想创建一些参数的视图。参数具有名称、说明和值。这应该类似于:

参数名称、滑块、数字显示

描述

在kivy中,您可以使用kv语言的BoxLayout:

BoxLayout:
    orientation: 'vertical'
    BoxLayout:
        orientation: 'horizontal'
        Label:
            text: 'warp power'
        Slider:
            id: pwSlider
            min: 0.0
            max: 1.0
            value: 0.0
        TextInput:
            text: "%.4f" % pwSlider.value
            multiline: False
            on_text_validate: pwSlider.value = float(self.text)
    Label:
        markup: True
        text: '[color=a0a0a0]sets the warp power[/color]'
问题是,描述和参数名称不是从同一个x位置开始的。 另一个问题是,我想将文本的x大小缩小到内部文本的大小


有什么想法吗?

要将标签宽度限制为纹理宽度(如果需要,高度的逻辑相同),可以:

Label:
    size_hint_x: None
    width: self.texture_size[0]
如果在BoxLayout中使用这样的标签,默认情况下它将左/下对齐。关于您的信息,您可以使用
pos\u hint
将其放置在其他地方


我想在您的示例中,仅在描述标签中使用上述方法就足够了。

您知道如何排列文本的位置吗?在本例中,它居中。要构建一个漂亮的UI,如果它与左边对齐,那将是完美的。其思想是“扭曲力量”和“设置扭曲力量”从同一个x位置开始。