【发布时间】:2019-08-30 03:17:59
【问题描述】:
我目前正在为学生开发一个应用程序,该应用程序描述了各种实际实验。 该应用程序由几个 AccordionItems 组成。 其中一个问题出现了,我想在其中嵌入图像,该图像保持其纵横比但适应尽可能大。为了解释图像的某些部分,我想在有趣的设备/对象上放置半透明按钮,这些按钮在 on_release 以文本形式提供信息。
通过在 x 或 y 方向拉伸应用程序窗口以及不允许拉伸图像的事实,窗口上方和下方或右侧和左侧存在不属于实际图像的区域。
如何根据图像的当前大小缩放和定位按钮?
我尝试使用RelativeLayout,但按钮似乎面向整个窗口,我无法理解。 我也尝试过使用 id,但我不知道如何有效地使用它。
这里有一些当前代码:
class LaserApp(App):
pass
if __name__ == '__main__':
#Config.set('graphics', 'fullscreen', 'auto')
Config.set('graphics', 'fullscreen', '0')
Config.set('graphics', 'window_state', 'windowed')
Config.write()
LaserApp().run()
#:import ScrollEffect kivy.effects.scroll.ScrollEffect
#:import Button kivy.uix.button.Button
Accordion:
AccordionItem:
title: 'titel1'
collapse: False
AccordionItem:
title: 'titel2'
AccordionItem:
title: 'relevant content'
RelativeLayout:
canvas:
Image
size_hint: 1, 1
pos: self.pos
size: self.texture_size
source: 'background.png'
canvas.after:
RelativeLayout:
Button: #Button i want to align and resize depending on Image: / 'background.png'
AccordionItem:
title: 'titel4'
非常欢迎任何 cmets 和帮助。 非常感谢提前
P.S.:请原谅不好的描述。
【问题讨论】: