#python #class #user-interface #kivy #return
Вопрос:
Новичок в python — kivy — gui
я пытаюсь получить информацию от 1 класса к другому, классы-это в основном разные экраны, которые у меня есть для моего графического интерфейса. я исследовал функцию возврата, но это совсем не помогает, потому что я нуб.
основной графический интерфейс, работающий в файле .kv это разбивка моего кода.
PROJECT_PATH = ""
class TrainNew1(Screen):
#takes user input,i click a button to submit, runs this function.
def test(self):
PROJECT_PATH = self.ids.ProjectName.text
#will print PROJECT_PATH fine within test /class function
class TrainNew2(Screen):
print(PROJECT_PATH) # will not print
Я не уверен, как заставить его печатать в новом классе.
Ответ №1:
Что вам нужно, так это global
переменные. Вы знали о прицелах? Короче говоря, глобальная переменная-это тип переменной, к которой можно получить доступ/изменить из любого места файла кода. Вот пример :
PROJECT_PATH = ""
class TrainNew1(Screen):
global PROJECT_PATH # this is required to modify the original PROJECT_PATH
#takes user input,i click a button to submit, runs this function.
def test(self):
PROJECT_PATH = self.ids.ProjectName.text
#will print PROJECT_PATH fine within test /class function
class TrainNew2(Screen):
global PROJECT_PATH # this is used to access PROJECT_PATH
print(PROJECT_PATH) # Now, It can be used/modified even inside in this class
Комментарии:
1. Здравствуйте, мистер Хушал Джангид. Большое вам СПАСИБО, что нашли время ответить на мой вопрос. Вы мне очень помогли! я опытный(зрелый) программист, но я все еще изучаю синтаксис python, я не понимал, что вы можете это сделать. еще больше причин любить python! спасибо, сэр.
2. Это было для меня удовольствием, сэр 🙂
3. Эй, @Chandradeobalram, пожалуйста, примите это как решение !