С помощью ответа @Shane на Создание окна журнала в Python Я сделал образец для вас.
# -*- coding: utf-8 -*-
import wx
import threading
import time
class ExamplePanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent)
self.quote = wx.StaticText(self, label="Your Log :", pos=(10, 10))
self.logger = wx.TextCtrl(self, pos=(0,40), size=(1100,1100), style=wx.TE_MULTILINE | wx.TE_READONLY)
########################################################################
# Use a thread to start your task
########################################################################
task_thread = threading.Thread(target = self.my_task, args = ())
task_thread.setDaemon(True)
task_thread.start()
def append_txt(self,txt):
self.logger.AppendText(txt)
def my_task(self):
########################################################################
# Do your job right here and update log
########################################################################
exampleFile = open('example.csv')
exampleReader = csv.reader(exampleFile)
# exampleData = list(exampleReader)
print (exampleData)
self.logger.AppendText('CSV output : \n' )
self.logger.AppendText('\n'.join(map(str,exampleData)))
'''for i in range(100):
self.append_txt('\nNew line added(No.%s)' % (i + 1))
time.sleep(1)
'''
def sample_Window():
app = wx.App(False)
frame = wx.Frame(None)
panel = ExamplePanel(frame)
frame.Show()
app.MainLoop()
sample_Window()
Ваш конкретный ответ кода:
exampleFile = open('example.csv')
exampleReader = csv.reader(exampleFile)
# exampleData = list(exampleReader)
print (exampleData)
self.logger.AppendText('CSV output : \n' )
self.logger.AppendText('\n'.join(map(str,exampleData)))
и
и мой пример содержимого csv:
Col1,Col2
1,2
M,N
Приветствие.