首页 > 其他分享 >tkinter Canvas加滑动条为什么变灰没用

tkinter Canvas加滑动条为什么变灰没用

时间:2023-08-11 17:26:11浏览次数:39  
标签:Canvas tkinter configure canvas scrollbar 变灰 root pack

因为还要设置Canvas的滑动范围:

通过canvas的对象方法scrollregion设置

如,设置为全部,则为canvas1.configure(scrollregion=c.bbox("all"))

 

示例代码(ChatGPT写的):

from tkinter import *


def on_canvas_configure(event):
    canvas.configure(scrollregion=canvas.bbox("all"))


root = Tk()

# 创建滚动条
scrollbar_y = Scrollbar(root, orient="vertical")

# 创建Canvas,并绑定滚动条
canvas = Canvas(root, yscrollcommand=scrollbar_y.set)
scrollbar_y.config(command=canvas.yview)

# 将滚动条与Canvas进行布局
scrollbar_y.pack(side="right", fill="y")
# scrollbar_x.pack(side="bottom", fill="x")
canvas.pack(side="left", fill="both", expand=True)

# 添加内容到Canvas
frame = Frame(canvas)
canvas.create_window((0, 0), window=frame, anchor="nw")

# 配置Canvas滚动区域
canvas.bind("<Configure>", on_canvas_configure)

# 往Canvas中添加一些示例内容
for i in range(100):
    label = Label(frame, text="Label {}".format(i))
    label.pack()

root.mainloop()

 

标签:Canvas,tkinter,configure,canvas,scrollbar,变灰,root,pack
From: https://www.cnblogs.com/roundfish/p/17623483.html

相关文章

  • 如何使用原生 JavaScript Canvas API 实现视频中的绿幕背景替换功能 All In One
    如何使用原生JavaScriptCanvasAPI实现视频中的绿幕背景替换功能AllInOneCanvas&Videodemoschroma-keying/greenscreeneffectconstprocessor={};processor.doLoad=functiondoLoad(){constvideo=document.getElementById("video");this.vid......
  • js:使用LetterAvatar通过canvas实现浏览器中生成字母头像
    实现效果LetterAvatar的原理就是利用了浏览器对象canvas在线体验:https://mouday.github.io/tools/pages/letter-avatar/index.htmlLetterAvatar.js完整代码/**LetterAvatar**ArturHeinze*CreateLetteravatarbasedonInitials*basedonhttps://gist.github.co......
  • Canvas 画布学习(补全中...)
    1.标签<canvas></canvas>2.大小可以在标签中直接写<canvasid="canvas"width="500"height="300"></canvas>也可以在Css中为id类添加样式#canvas{background-color:red;width:520px;height:200px;}也可以在J......
  • vue + canvas 实现涂鸦面板
    前言专栏分享:vue2源码专栏,vuerouter源码专栏,玩具项目专栏,硬核......
  • Canvas好难,如何让研发低成本实现Web端流程图设计功能
    摘要:本文由葡萄城技术团队于博客园原创并首发。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。前言相信大家在职场中经常会用到流程图,在互联网行业,绘制流程图不论在产品的设计阶段,还是后期优化业务流程的阶段,都有着巨大的价值。事实上,......
  • canvas实现视频播放并支持自动播放
    背景:在工作中很多时候会遇到大屏首页需要酷炫的动态背景,很多时候酷炫的动效用css和js比较难于实现。此时就会产生两种方案,第一种是采用gif,第二种会采用video方案。但是第一种方案有时候导出的gif图片往往会比较大,在首屏加载有时候会不太理想,资源比较大在加载时会出现一卡一卡......
  • 记录--canvas 复刻锤子时钟
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助介绍canvas:使用脚本(通常为JavaScript)来绘制图形的HTML元素。本人遍历了以下两份文档,学习完就相当于有了笔和纸,至于最后能画出什么,则需要在canvas应用方面进一步学习。MDN的Canvas教程1张鑫旭的Ca......
  • Android View绘制原理 - SkCanvas
    上一篇文章介绍了在Android框架中的各种Canvas,其中C层的RecordingCanas承上启下,在SkiaRecordingCanvas的绘制方法会通过调用它的mRecorder来记录,而这个mRecorder的类型正好就是SkCanvas,准确的说是它的子类RecordingCanas。而各种绘制方法会对应生成一个Op对象来描述这个绘制操作,Rec......
  • canvas常用操作方法
    base64转换Blob数据functiondataURLtoBlob(dataurl:string){vararr=dataurl.split(','),mime=arr[0].match(/:(.*?);/)[1],bstr=atob(arr[1]),n=bstr.length,u8arr=newUint8Array(n);while(n--){......
  • tkinter的Entry设置默认值的效果
    用Python的tkinter库做GUI程序,Entry控件被我们用来获取用户的输入,不过很多时候,我们希望GUI界面上的Entry控件能有默认值,用户可以修改默认值,也可以不修改。默认值提高了软件的易用性。直接看代码:importtkinterastkroot=tk.Tk()lb=tk.Label(root,text='网址:')lb.grid......