Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » GUI
  • » скролл для изображений и текста [RSS Feed]

#1 Фев. 9, 2014 19:27:00

zlodiak
От: Россия
Зарегистрирован: 2014-01-19
Сообщения: 159
Репутация: +  0  -
Профиль   Адрес электронной почты  

скролл для изображений и текста

помогите пожалуйста разобраться почему на win7 в одном случае ползунок скролла показывается, а в другом - нет

следующий код выводит в виджете Text все картинки из каталога imgs

import os, sys
import tkinter
from PIL.ImageTk import PhotoImage
DIR_IMGS = 'imgs'
imgfiles = os.listdir(DIR_IMGS)
main = tkinter.Tk()
savephotos = []
outer = tkinter.Text(main, bg='yellow')
outer.pack(side='left')
sbar = tkinter.Scrollbar(outer)
sbar.pack(side='right', fill='y')
sbar.config(command=outer.yview)
outer.config(yscrollcommand=sbar.set)
for imgfile in imgfiles:
    imgpath = os.path.join(DIR_IMGS, imgfile)
    objImg = PhotoImage(file=imgpath)
    tkinter.Label(outer, image=objImg).pack()
    savephotos.append(objImg)
    outer.insert('end', imgpath + '\n')
    
main.mainloop()

в пределах окна видны лишь 2 картинки. теоретически чтобы увидеть остальные нужно прокрутить скролл вниз. но ползунка у скролла нет



если окно сжать по вертикали, то строки текста влияют на появление скролла. это показано на следующей картинке


мне это явление не понятно. объясните пожалуйста.


UPD
кажется, форум не отображает картинки полностью. вот ссылки на оригиналы
http://prozaik.16mb.com/misc/im.png
http://prozaik.16mb.com/misc/list.png

Отредактировано zlodiak (Фев. 9, 2014 19:29:42)

Офлайн

#2 Фев. 9, 2014 20:15:21

4kpt_II
От: Харьков
Зарегистрирован: 2013-10-24
Сообщения: 999
Репутация: +  58  -
Профиль   Отправить e-mail  

скролл для изображений и текста

Для таких вещей нужно использовать Canvas.create_window.

Будут вопросы - пишите…

Офлайн

#3 Сен. 26, 2014 05:53:17

postall_007
Зарегистрирован: 2014-09-26
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

скролл для изображений и текста

Подскажите пожалуйста что такое “скроллинг изображений” или киньте ссылку сайта. нужно сделать доклад. ни могу найти ничего путьнего. ???

Офлайн

#4 Сен. 27, 2014 12:19:37

Ryoga
Зарегистрирован: 2014-02-01
Сообщения: 20
Репутация: +  1  -
Профиль   Отправить e-mail  

скролл для изображений и текста

postall_007
Подскажите пожалуйста что такое “скроллинг изображений” или киньте ссылку сайта. нужно сделать доклад. ни могу найти ничего путьнего. ???

Это типа того:


from Tkinter import *
root = Tk()
root.pack_propagate(False)
vscrollbar = Scrollbar(root, orient=VERTICAL)
hscrollbar = Scrollbar(root, orient=HORIZONTAL)
vscrollbar.pack(fill=Y, side=RIGHT, expand=FALSE)
hscrollbar.pack(fill=X, side=BOTTOM, expand=FALSE)
canvas = Canvas(root, yscrollcommand=vscrollbar.set,
                        xscrollcommand=hscrollbar.set,  width=2000, height=1200)
canvas.pack(side=LEFT, fill=BOTH, expand=TRUE)
canvas.config(scrollregion="0 0 2000 1200")
img = PhotoImage(file = 'green.pbm')
canvas.create_image(0,0, anchor='nw', image=img)
vscrollbar.config(command=canvas.yview)
hscrollbar.config(command=canvas.xview)
root.mainloop()

Офлайн

  • Начало
  • » GUI
  • » скролл для изображений и текста[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version