سؤال

أقوم بإنشاء واجهة مستخدم باستخدام tkk في python وأواجه مشكلة في Treeview يأمر selection_set().أحاول استخدامه لتعيين التحديد الافتراضي عند بدء تشغيل برنامجي ولكن يبدو أنه لا يمكنه قبول سلسلة تحتوي على مسافات.

tree.selection_set("Sunset Grill")

الأسباب:

return self.tk.call(self._w, "selection", selop, items)
_tkinter.TclError: Item Sunset not found

يمكن لأي شخص أن يعطي أي اقتراحات؟

هل كانت مفيدة؟

المحلول

يمكنك تجربة ما يلي:

tree.selection_set('"Sunset Grill"')

أعتقد أن هذا يعتمد على كود ttk.py وفهمي المحدود لـ Tcl.استدعاء Tree.selection_set() يستدعي self.selection("set"، items)، والذي يستدعي بدوره self.tk.call(self._w, "selection", selop, items) حيث selop='set' and items هي السلسلة التي تم تمريرها في البداية إلى التحديد_set().لست متأكدًا مما إذا كان self.tk.call() يقوم بأي تدليك للوسائط قبل تمريرها إلى Tcl لأنه استدعاء لوحدة _tkinter.c ولا أعرف ما يكفي عن واجهة Python/C grok هذا الرمز.;)

نصائح أخرى

يحاول tree.selection_set(["Sunset Grill"])

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top