Форум сайта python.su
Здравствуйте, только изучаю работу и интерфейсом. Прям совсем совсем новичок в этом деле. Суть в том, что у меня есть 3 файла: 1)файл с кодом самого интерфейса(gui_main_interface.py), 2) файл с кодом инициализации интерфейса(__init__.py), 3) файл с определёнными функциями(vk_api_methods.py).
Мне необходимо в файле с функциями (vk_api_methods.py) использовать элементы Qt интерфейса, к примеру получить данные из QlineEdit1 и QlineEdit2, после чего будет выполняться функция с полученными на вход данными и после чего новые данные из функции должны будут записаться в QlistWidget.
Думаю стандартный код с созданием элементов окна показывать не надо, поэтому покажу файлы __init__.py и vk_api_methods.py
_________________________________________________________________________________________
__init__.py:
if __name__ == “__main__”:
import sys
from gui_main_interface import Ui_VK_API
from PyQt5 import QtCore, QtGui, QtWidgets
from vk_api_methods import vk_methods
import gephi_streaming
from my_data import MyVkData
def myprint():
ui.listWidget.addItem()
app = QtWidgets.QApplication(sys.argv)
VK_API = QtWidgets.QDialog()
ui = Ui_VK_API()
ui.setupUi(VK_API)
ui.pushButton.clicked.connect(lambda:vk_methods.newsfeed_search(ui.lineEdit.text(),ui.lineEdit_2.text()))
ui.pushButton_2.clicked.connect(gephi_streaming.gephi_visualise)
VK_API.show()
sys.exit(app.exec_())
_________________________________________________________________________________________
vk_api_methods.py:
import vk
from my_data import MyVkData
from gui_main_interface import Ui_VK_API
session = vk.AuthSession(app_id=MyVkData.APP_ID,user_login=MyVkData.LOGIN,user_password=MyVkData.GET_PASSWORD())
vkapi = vk.API(session,v = ‘5.103’)
class vk_methods(object):
@staticmethod
def friends_get(user_id):
friends = vkapi.friends.get(user_id=user_id,fields='domain')
return friends
@staticmethod
def newsfeed_search(text1,text2):
topics=vkapi.newsfeed.search(q=str(text1),count=int(text2),extended=1)
print(topics)
_________________________________________________________________________________________
Т.е. как реализовать получение данные из QlineEdit1 и QlineEdit2 мне подсказали, я вроде понял, однако мне нужно именно чтобы я мог использовать элементы интерфейса в любом python файле, т.е. написать так, к примеру:
class vk_methods:
@staticmethod
def newsfeed_search():
topics=vkapi.newsfeed.search(q=str(txt1),count=int(txt2),extended=1)
#И дальше что-то типа этого:
for items in topics:
ui.listWidget.addItem(items)
_________________________________________________________________________________________
Заранее спасибо большое!
Отредактировано dakota (Фев. 14, 2020 17:02:06)
Офлайн
Во-первых код выкладывайте под теги
[code python][/code]
class ss(QMainWindow): # в этом классе вся логика программы (финальная) def __init__(self): QMainWindow.__init__(self) # то что здесь будет выполнено единожды но при этом может взаимодействовать со всеми классами app = QApplication(sys.argv) wnd = ss() # то что здесь будет выполнено единожды но при этом может взаимодействовать с гуем print(1) wnd.show() sys.exit(app.exec_()) print('lol') # не сработает никогда
Отредактировано @cckyi_boxxx (Фев. 15, 2020 02:48:04)
Офлайн
@cckyi_boxxx
Во-первых код выкладывайте под теги
Офлайн