以下代码旨在:要求使用导入文本文件,将文件行存储在列表中,然后在标签上显示该列表。我的问题是当用户尝试导入非常长的文本文件时。现在,如果文件是长文件,则不会显示所有文本。我想知道一旦文件长度达到一定长度就会出现滚动条/滚动框架。
import tkinter
from tkinter import *
from tkinter.filedialog import askopenfile
from tkinter.filedialog import askopenfilename
window = tkinter.Tk()
def import_txt():
global import_list
file_name = askopenfilename(filetypes=[("Text files","*.txt")])
import_list = []
with open(file_name, 'r') as f:
go.pack()
import_list = f.readlines()
f.close()
def display():
global import_list
display_txt.config(text=str(import_list))
display_txt.pack()
start = tkinter.Button(window, text="Import", command=import_txt)
start.pack()
go = tkinter.Button(window, text="GO", command=display)
display_txt = tkinter.Label(window)
window.mainloop()
import tkinter
from tkinter import *
from tkinter.filedialog import askopenfile
from tkinter.filedialog import askopenfilename
window = tkinter.Tk()
def import_txt():
global import_list
file_name = askopenfilename(filetypes=[("Text files","*.txt")])
import_list = []
with open(file_name, 'r') as f:
go.pack()
import_list = f.readlines()
f.close()
def display():
global import_list
display_txt.config(text=str(import_list))
display_txt.pack()
start = tkinter.Button(window, text="Import", command=import_txt)
start.pack()
go = tkinter.Button(window, text="GO", command=display)
display_txt = tkinter.Label(window)
window.mainloop()
答案 0 :(得分:0)
只需使用scrolledtext小部件而不是标签。是否有一些特别的考虑因为这对你不起作用?您可以对其进行配置,以便用户无法修改文本(如果这是问题)。只需使用<RelativeLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android">
<Button
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="<<"
android:id="@+id/button2"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/TodayDataTextView"
android:gravity="center_vertical"
android:text="Today Data"
android:textAlignment="center"
android:textColor="#0000ff"
android:background="#00000000"
android:textSize="20dp"
android:textStyle="bold|italic"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true" />
<Button
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=">>"
android:id="@+id/button"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true" />
答案 1 :(得分:0)
我喜欢PurityLake:https://stackoverflow.com/a/15227842/709998
中的此解决方案如果您的要求略有不同,我认为您至少可以修改它。