kivymd dropdownmenu

222 views
Skip to first unread message

Degenerate Tech

unread,
Sep 3, 2020, 1:23:18 PM9/3/20
to Kivy users support
drop is object property in UnitConverter()

this shows error   
 


#:import  MDDropdownMenu kivymd.uix.menu 
<UnitConverter>:
orientation: 'vertical'
drop:MDDropdownMenu(caller=root.ids.s,items=[{"text":"0"}])

MDToolbar:
title:"Unit Converter"
MDTabs:
elevation:10
Tabs:
text:"battery-10"
orientation: 'vertical'
ScrollView:
size_hint: (1, 1)
        do_scroll_x: 0
        do_scroll_y: True
        scroll_type:['bars', 'content']
        bar_width: 100
       

        GridLayout:
        cols:1
       
       
            id: sv_grid
            size_hint: 1, None
            height:self.minimum_height
            row_force_default:True
row_default_height:100
BoxLayout:
MDDropDownItem:
text: "mm"
font_size: 20
current_item:"mm"
id:s



##############errror 

[INFO   ] [CutBuffer   ] cut buffer support enabled
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/kivy/lang/builder.py", line 249, in create_handler
    return eval(value, idmap), bound_list
  File "/home/sahil/kivy_md/CalculatorMD/unitconverter.kv", line 4, in <module>
    drop:MDDropdownMenu(caller=root.ids.s,items=[{"text":"0"}])
TypeError: 'module' object is not callable
 
During handling of the above exception, another exception occurred:
 
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/kivy/lang/builder.py", line 692, in _apply_rule
    rctx['ids'])
  File "/usr/lib/python3/dist-packages/kivy/lang/builder.py", line 254, in create_handler
    cause=tb)
kivy.lang.builder.BuilderException: Parser: File "/home/sahil/kivy_md/CalculatorMD/unitconverter.kv", line 4:
...
      2:<UnitConverter>:
      3:       orientation: 'vertical'
>>    4:       drop:MDDropdownMenu(caller=root.ids.s,items=[{"text":"0"}])
      5:
      6:       MDToolbar:
...
TypeError: 'module' object is not callable
  File "/usr/lib/python3/dist-packages/kivy/lang/builder.py", line 249, in create_handler
    return eval(value, idmap), bound_list
  File "/home/sahil/kivy_md/CalculatorMD/unitconverter.kv", line 4, in <module>
    drop:MDDropdownMenu(caller=root.ids.s,items=[{"text":"0"}])
 
 
During handling of the above exception, another exception occurred:
 
Traceback (most recent call last):
  File "main.py", line 61, in <module>
    Calculator().run()
  File "/usr/lib/python3/dist-packages/kivy/app.py", line 829, in run
    root = self.build()
  File "main.py", line 54, in build
    self.uc=UnitConverter()
  File "/usr/lib/python3/dist-packages/kivy/uix/boxlayout.py", line 145, in __init__
    super(BoxLayout, self).__init__(**kwargs)
  File "/usr/lib/python3/dist-packages/kivy/uix/layout.py", line 76, in __init__
    super(Layout, self).__init__(**kwargs)
  File "/usr/lib/python3/dist-packages/kivy/uix/widget.py", line 361, in __init__
    rule_children=rule_children)
  File "/usr/lib/python3/dist-packages/kivy/uix/widget.py", line 469, in apply_class_lang_rules
    rule_children=rule_children)
  File "/usr/lib/python3/dist-packages/kivy/lang/builder.py", line 538, in apply
    rule_children=rule_children)
  File "/usr/lib/python3/dist-packages/kivy/lang/builder.py", line 707, in _apply_rule
    e), cause=tb)
kivy.lang.builder.BuilderException: Parser: File "/home/sahil/kivy_md/CalculatorMD/unitconverter.kv", line 4:
...
      2:<UnitConverter>:
      3:       orientation: 'vertical'
>>    4:       drop:MDDropdownMenu(caller=root.ids.s,items=[{"text":"0"}])
      5:
      6:       MDToolbar:
...
BuilderException: Parser: File "/home/sahil/kivy_md/CalculatorMD/unitconverter.kv", line 4:
...
      2:<UnitConverter>:
      3:       orientation: 'vertical'
>>    4:       drop:MDDropdownMenu(caller=root.ids.s,items=[{"text":"0"}])
      5:
      6:       MDToolbar:
...
TypeError: 'module' object is not callable
  File "/usr/lib/python3/dist-packages/kivy/lang/builder.py", line 249, in create_handler
    return eval(value, idmap), bound_list
  File "/home/sahil/kivy_md/CalculatorMD/unitconverter.kv", line 4, in <module>
    drop:MDDropdownMenu(caller=root.ids.s,items=[{"text":"0"}])
 
  File "/usr/lib/python3/dist-packages/kivy/lang/builder.py", line 692, in _apply_rule
    rctx['ids'])
  File "/usr/lib/python3/dist-packages/kivy/lang/builder.py", line 254, in create_handler
    cause=tb)

Degenerate Tech

unread,
Sep 3, 2020, 1:26:37 PM9/3/20
to Kivy users support
here i am creating a object ...where i am going worng ?

Andreas Ecker

unread,
Sep 4, 2020, 4:21:05 PM9/4/20
to kivy-...@googlegroups.com
the import statement of the kv lang is different to the one in python...

in short simply change:

#:import  MDDropdownMenu kivymd.uix.menu
into:
#:import  MDDropdownMenu MDDropdownMenu kivymd.uix.menu

background info you find in the kivy docs here: https://kivy.org/doc/stable/guide/lang.html#special-syntax



--
You received this message because you are subscribed to the Google Groups "Kivy users support" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kivy-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/kivy-users/c50caf06-a6e6-49ce-835e-343b88fd5641o%40googlegroups.com.

Andreas Ecker

unread,
Sep 4, 2020, 4:24:45 PM9/4/20
to kivy-...@googlegroups.com
SORRY ignore the last email (there was a typo in the solution)

AGAIN ... the syntax for to import classes in the kv lang is different to the one in python...

in short simply change:

#:import  MDDropdownMenu kivymd.uix.menu
into:
#:import  MDDropdownMenu MDDropdownMenu.kivymd.uix.menu

background info you find in the kivy docs here: https://kivy.org/doc/stable/guide/lang.html#special-syntax
Reply all
Reply to author
Forward
0 new messages