PyGTK 용 TextView 위젯과 관련된 두 가지 문제점이 있습니다. TextView의 크기는 어떻게 지정합니까? 텍스트를 가져 와서 TextView에 텍스트를 삽입하는 방법은 무엇입니까?PyGTK TextView 문제
Empty Output
이 코드는 위의 나는에 필수 요소를 포함하는 더 큰 코드베이스에서 요약 한 핵심 코드는 다음과 같습니다 위의 코드를 실행
import sys
importStatus = False
output = None
try:
import pygtk
pygtk.require('2.0')
import gtk
importStatus = True
except ImportError:
print "PyGTK module does not exist. Can't launch GUI !"
print "Please download and install GTK and PyGTK."
importStatus = False
if importStatus:
class gtkGUI():
def __init__(self):
print "gtkGUI imported"
self.startGUI()
def startGUI(self):
print "GUI Started"
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.set_border_width(10)
## Buttons
self.btn = gtk.Button("Press me !")
## Text View with frame wrapping
self.page_size = gtk.Adjustment(lower=100, page_size=100)
self.sw = gtk.ScrolledWindow(self.page_size)
self.sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
output = gtk.TextView()
self.textbuffer = output.get_buffer()
output.set_wrap_mode(gtk.WRAP_WORD)
output.set_editable(False)
self.sw.add(output)
self.frame = gtk.Frame()
self.frame.set_label(" Result: ")
self.frame.set_shadow_type(gtk.SHADOW_ETCHED_OUT)
self.frame.add(self.sw)
## Packing widgets into window
# Vertical box to contain all boxes
self.vbox = gtk.VBox(homogeneous=False, spacing=0)
# Output View
self.vbox.pack_start(self.frame, expand=False, fill=False, padding=5)
# Adding button to window
self.box = gtk.HBox(homogeneous=False, spacing=0)
self.box.pack_end(self.btn, expand=False, fill=False, padding=5)
self.vbox.pack_start(self.box, expand=False, fill=False, padding=5)
## Presenting window
self.window.add(self.vbox)
self.window.show_all()
gtk.main()
self.insertText("helloworld")
return None
def insertText(self, text):
if(output == None):
print "Empty Output"
else:
print "inserting - " + output
출력 : 아래
내 소스 코드 문제.Java에 "textarea.append ("... ");" Swing에 대해서는 "textarea.getText()"를 사용하십시오. PyGTK에서 TextView와 비슷한 것을 찾을 수 없습니다.
'self.buffer = self.output.get_buffer()'및 'self.buffer.insert_at_cursor (text)'를 사용하여 텍스트를 삽입하는 방법을 생각해 냈습니다. – thotheolh
확장 (확장 = True) 및 채우기 (채우기 = True)를 허용하는 TextView 구성 요소가 포함 된 HBox를 만들면 TextView의 크기를 변경할 수 있지만 기본 질문은 어떻게하면 TextView 구성 요소의 크기를 HBox 또는 일부 레이아웃에 의존하고 있습니까? – thotheolh