저는 TKinter를 사용하여 인기있는 트윗을 트위터를 사용하여 트위터 API에서 렌더링하고 있습니다. 문제는 트윗의 프레임이 서로의 하단에 위치한다는 것입니다. 프레임의 측면을 변경하려고 시도했지만 아무 것도 변경되지 않았습니다.TKinter로 서로 옆에있는 프레임에 라벨을 표시합니다.
문제는
아래와 같습니다 나는 트윗이 서로이 다음과 같이 할 것을 권장합니다
from Tkinter import *
import tweepy
from local import *
from PIL import Image, ImageTk
from ttk import Frame, Style
import Tkinter as tk
import ttk
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(OAUTH_TOKEN, OAUTH_TOKEN_SECRET)
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(OAUTH_TOKEN, OAUTH_TOKEN_SECRET)
api = tweepy.API(auth)
sa_ID = 23424938
large_text_size = 12
text_size = 20
#create obj in the root page (main windows)
root= Tk()
#make bg black
root.configure(background='black')
screenWidth = root.winfo_screenwidth()
screenHeight = root.winfo_screenheight()
root.overrideredirect(1)
root.geometry('%dx%d+0+0' % (screenWidth, screenHeight))
root.configure(background='#000000') # black
canvas = Canvas(
background='#000000', # black
borderwidth=-5,
height=500,
relief='flat',
width=500)
canvas.pack(expand=1, fill=BOTH)
#create invisible container
topframe= tk.Frame(root,background='black')
topframe.pack(side=TOP, fill=BOTH, expand = YES)
label24 = Label(topframe, text="Popular Tweets", bg='black', fg='white',font=('minionpro', text_size)).pack(anchor=CENTER)
bottomframe= Frame(root)
bottomframe.pack(side= BOTTOM)
#, padx=20, pady=20
# name the window
root.title("The news Portal")
trends1 = api.trends_place(id=sa_ID)
data = trends1[0]
# grab the trends
trends = []
trends=data['trends']
scrollbar = tk.Scrollbar(root)
scrollbar.pack(side=RIGHT, fill=Y)
listbox = Listbox(root, yscrollcommand=scrollbar.set, background='black')
listbox.pack(side=RIGHT)
scrollbar.config(command=listbox.yview)
for trend in trends:
if trend['name'].startswith('#'):
for status in tweepy.Cursor(api.search, q=trend['name'], result_type='popular').items(1):
leftframe = tk.Frame(canvas, background='black', borderwidth=2, relief="groove")
leftframe.pack()
label6 = Label(leftframe, text=('Tweet by: @' + status.user.screen_name, status.text), bg='black',fg='white',
font=('minionpro', large_text_size)).pack(side=BOTTOM,anchor=N)
#label23 = Label(leftframe, text="\n", bg='black', fg='white').pack(side=BOTTOM)
#print status.text
#windows is continously there untill uder close it (never close)
root.mainloop()
: 여기
내 코드입니다
문제는 내가 mi입니다. 이 레이아웃으로 인해 많은 트윗을 보냈습니다. 도와 주셔서 감사합니다.
'[tkinter] grid labels '에 대한 SO 검색은 435 개의 결과를 반환합니다. 처음 10 ~ 20 명의 도움이 필요하다고 생각합니다. –
나는 실제로 검색을했고 장소, 그리드 및 for 루프를 만드는 것과 같은 여러 솔루션을 적용했습니다. 나는이 코멘트를 써서 새로운 정보를 추가했다는 것을 알지 못한다 :) @TerryJanReedy –
당신은 질문에서이 코멘트의 새로운 정보를 말하지 않았으므로 나는 알 수 없었다. 많은 초보자는 간단한 검색이 중복을 나타 내기 때문에 분명히 SO 검색에 대해 알지 못합니다. 어떤 경우 든 원하는 출력은 고정 된 크기의 읽기 전용 텍스트 위젯 격자입니다. 트윗 한도 때문에 가능합니다. 레이블 또는 텍스트가 작동 할 수 있습니다. 후기는 더 복잡하지만 다른 글꼴과 크기를 허용합니다. –