TextEntryDialog proste okno dialogowe do wprowadzania tekstu w wxPython
Najprostrzy przykład użycia
Tworzenie okna dialogowego do wprowadzania tekstu, wyświetlenie, sprawdzanie czy wciśnięto OK i pobranie wprowadzonego tekstu
#!/usr/bin/python
import wx
# inicjacja wx
app = wx.App()
# definicja okna dialogowego
dlg = wx.TextEntryDialog(None, "Podaj tekst")
# pokazanie okna i pobranie informacji o sposobie zamkniecia okna
if dlg.ShowModal() == wx.ID_OK:
# wcisnieto 'OK' wiec pobieramy tekst wpisany w oknie
print "Podano tekst:", dlg.GetValue()
else:
# wcisnieto 'Anuluj'
print "Zrezygnowano"
Modyfikacje
Nagłowek okna
Dodanie tekstu wyświetlanego w nagłówku okna:
dlg = wx.TextEntryDialog(None, "Podaj tekst", "Nagłowek okna")
::::python
dlg = wx.TextEntryDialog(None, "Podaj tekst", caption="Nagłowek okna")
::::python
dlg = wx.TextEntryDialog(None, "Podaj tekst")
dlg.SetTitle("Nagłowek okna")
Wartość domyślna
Dodanie wartości domyślnej wyświetlanej w polu do wpisywania tekstu:
# trzeba podac naglowek okna
dlg = wx.TextEntryDialog(None, "Podaj tekst", "Przykładowe okno", "wartość domyślna")
::::python
# nie trzeba podawac naglowka okna
dlg = wx.TextEntryDialog(None, "Podaj tekst", defaultValue="wartość domyślna")
::::python
# dodawanie wartosci po zadeklarowaniu dlg
dlg = wx.TextEntryDialog(None, "Podaj tekst")
dlg.SetValue("wartość domyślna")
Zmiana wyglądu
Klasyczny (domyślny) wygląd z przyciskiem 'OK' i 'Anuluj'. Klawisz ENTER jest równoważny z wciśnięciem 'OK' (i wygenerowaniem wyniku wx.ID_OK) Klawisz ESC jest równoważny z wciśnięciem 'Anuluj' (i wygenerowaniem wyniku wx.ID_CANCEL)
# trzeba podac naglowek okna i wartosc domyslna
dlg = wx.TextEntryDialog(None, "Podaj tekst", "Przykładowe okno", "wartość domyślna", wx.OK|wx.CANCEL )
::::python
# nie trzeba podawac naglowka okna ani wartosc domyslna
dlg = wx.TextEntryDialog(None, "Podaj tekst", style=wx.OK|wx.CANCEL )
Okno tylko z przyciskiem 'OK' bez 'Anuluj'. Klawisz ENTER i ESC jest równoważny z wciśnięciem 'OK' (i wygenerowaniem wyniku wx.ID_OK)
# trzeba podac naglowek okna i wartosc domyslna
dlg = wx.TextEntryDialog(None, "Podaj tekst", style=wx.OK )
Pole na wprowadzanie hasła - zamiast wpisywanych znaków pokazuje kropki
dlg = wx.TextEntryDialog(None, "Podaj tekst", style=wx.OK|wx.CANCEL|wx.TE_PASSWORD )
Pole na tekst wielowierszowy. Klawisz ENTER przechodzi do nowej linii w polu zamiast zatwierdzić przycisk 'OK'
dlg = wx.TextEntryDialog(None, "Podaj tekst", style=wx.OK|wx.CANCEL|wx.TE_MULTILINE )
Zmiana pozycji
Podajemy pozycję na ekranie dla lewego górnego rogu okna. Pozycję podajemy jako tuple/krotkę (x,y) Górny lewy róg ekranu ma współrzędne (0,0).
Umieszczenie okna w prawym górnym rogu ekranu - lewy górny róg okna znajdzie się w pozycji (0,0)
# trzeba podac naglowek okna, wartosc domyslna i styl
dlg = wx.TextEntryDialog(None, "Podaj tekst", "Przykładowe okno", "wartość domyślna", wx.OK|wx.CANCEL, (0,0) )
::::python
# nie trzeba podawac naglowka okna, wartosc domyslna i stylu
dlg = wx.TextEntryDialog(None, "Podaj tekst", pos=(0,0) )
::::python
dlg = wx.TextEntryDialog(None, "Podaj tekst")
dlg.SetPosition( (0,0) )