Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 10, 2011 18:31:12

n2b
От:
Зарегистрирован: 2011-02-10
Сообщения: 125
Репутация: +  0  -
Профиль   Отправить e-mail  

wx.TextCtrl, вытащить переменные

import wx
import unit_database
class frame_pass(wx.Frame):
def __init__(self):
global passwTxt, loginTxt, tnsTxt
wx.Frame.__init__(self, None, -1, 'Text Entry Example',
size=(250, 150))
panel = wx.Panel(self, -1)
login = wx.StaticText(panel, -1, "Login:")
loginTxt = wx.TextCtrl(panel, -1, "",
size=(175, -1))
tns = wx.StaticText(panel, -1, "TNS:")
tnsTxt = wx.TextCtrl(panel, -1, "",
size=(175, -1))
loginTxt.SetInsertionPoint(0)
passw = wx.StaticText(panel, -1, "Password:")
passwTxt = wx.TextCtrl(panel, -1, "", size=(175, -1),
style=wx.TE_PASSWORD)
sizer = wx.FlexGridSizer(cols=2, hgap=6, vgap=6)
sizer.AddMany([login, loginTxt, tns, tnsTxt, passw, passwTxt])
panel.SetSizer(sizer)

self.ConnectBtn = wx.Button(panel, -1, "Connect", pos=(40, 100))
self.Bind(wx.EVT_BUTTON, self.OnConnectBtn, self.ConnectBtn)
self.ConnectBtn.SetDefault()

self.CancelBtn = wx.Button(panel, -1, "Cancel", pos=(135, 100))
self.Bind(wx.EVT_BUTTON, self.OnCancelBtn, self.CancelBtn)

dblogin = loginTxt.GetValue()
dbpass = passwTxt.GetValue()
dbtns = tnsTxt.GetValue()

def OnConnectBtn(self, event):
global connection
dblogin = loginTxt.GetValue()
dbpass = passwTxt.GetValue()
dbtns = tnsTxt.GetValue()
info = [dblogin, dbpass, dbtns]
connection = unit_database.OpenDB(dblogin, dbpass, dbtns)
return info
self.Destroy()

def OnCancelBtn(self, event):
self.Destroy()
Вот код.

Совсем совсем не понимаю как мне вытащить dblogin, dbpass, dbtns чтобы использовать их в другом файле…



Офлайн

#2 Окт. 12, 2011 04:53:52

Evgen_irk
От: Иркутск
Зарегистрирован: 2009-02-02
Сообщения: 45
Репутация: +  4  -
Профиль   Отправить e-mail  

wx.TextCtrl, вытащить переменные

Можно сделать так:

import wx
import unit_database
class FramePass(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, -1, 'Text Entry Example',
size=(250, 150))
panel = wx.Panel(self, -1)
self.info = None
login = wx.StaticText(panel, -1, "Login:")
self.loginTxt = wx.TextCtrl(panel, -1, "",
size=(175, -1))
tns = wx.StaticText(panel, -1, "TNS:")
self.tnsTxt = wx.TextCtrl(panel, -1, "",
size=(175, -1))
self.loginTxt.SetInsertionPoint(0)
passw = wx.StaticText(panel, -1, "Password:")
self.passwTxt = wx.TextCtrl(panel, -1, "", size=(175, -1),
style=wx.TE_PASSWORD)
sizer = wx.FlexGridSizer(cols=2, hgap=6, vgap=6)
sizer.AddMany([login, self.loginTxt, tns, self.tnsTxt, passw, self.passwTxt])
panel.SetSizer(sizer)

self.ConnectBtn = wx.Button(panel, -1, "Connect", pos=(40, 100))
self.Bind(wx.EVT_BUTTON, self.OnConnectBtn, self.ConnectBtn)
self.ConnectBtn.SetDefault()

self.CancelBtn = wx.Button(panel, -1, "Cancel", pos=(135, 100))
self.Bind(wx.EVT_BUTTON, self.OnCancelBtn, self.CancelBtn)

def OnConnectBtn(self, event):
global connection
dblogin = self.loginTxt.GetValue()
dbpass = self.passwTxt.GetValue()
dbtns = self.tnsTxt.GetValue()
self.info = [dblogin, dbpass, dbtns]
connection = unit_database.OpenDB(dblogin, dbpass, dbtns)
#return info
self.Destroy()

def OnCancelBtn(self, event):
self.Destroy()
В другом файле сделать что-то подобное:
frame_pass = FramePass()
new_info = frame_pass.info



wxPython

Офлайн

#3 Окт. 12, 2011 06:41:06

magnet85
От:
Зарегистрирован: 2009-04-13
Сообщения: 91
Репутация: +  2  -
Профиль   Отправить e-mail  

wx.TextCtrl, вытащить переменные

Передавать так:

connection = unit_database.OpenDB(dbl=dblogin, dbp=dbpass, dbt=dbtns)
и вытаскивать в другом файле:
x = kwds["dbl"]
y = kwds["dbp"]
z = kwds["dbt"]



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version