python实现颜色空间转换程序(Tkinter)

本文主要基于colorsys实现,样例是从hls转换到rgb,如果要换颜色空间很容易只需要修改一个函数,具体内容如下

用到了Scale和Canvas组件

运行效果图:

代码如下:

from Tkinter import *
import colorsys
#操作后的响应函数
def update(* args):
  'color'
  r,g,b = colorsys.hls_to_rgb(h.get() / 255.0, l.get() / 255.0, s.get() / 255.0)
  r,g,b = r * 255, g * 255, b * 255
  rgb.configure(text = 'RGB:(%d, %d, %d)' % (r, g, b))
  c.configure(bg = '#%02X%02X%02X' %(r, g, b)) 

root = Tk()
hue = Label(root, text = 'Hue')
hue.grid(row = 0, column = 0) 

light = Label(root, text = 'Lightness')
light.grid(row = 0, column = 1) 

sat = Label(root, text = 'Saturation')
sat.grid(row = 0, column = 2)
#初始化颜色为rgb的000,也就是纯黑色
rgb = Label(root, text = 'RGB(0, 0, 0)')
rgb.grid(row = 0, column = 3) 

h = Scale(root, from_ = 255, to = 0, command = update)
h.grid(row = 1, column = 0) 

l = Scale(root, from_ = 255, to = 0, command = update)
l.grid(row = 1, column = 1) 

s = Scale(root, from_ = 255, to = 0, command = update)
s.grid(row = 1, column = 2) 

c = Canvas(root, width = 100, height = 100, bg = 'Black')
c.grid(row = 1, column = 3) 

root.mainloop() 

以上就是本文的全部内容,希望对大家的学习Python程序设计有所帮助。

(0)

相关推荐

  • python实现定制交互式命令行的方法

    Python的交互式命令行可通过启动文件来配置. 当Python启动时,会查找环境变量PYTHONSTARTUP,并且执行该变量中所指定文件里的程序代码.该指定文件名称以及地址可以是随意的.按Tab键时会自动补全内容和命令历史.这对命令行的有效增强,而这些工具则是基于readline模块实现的(这需要readline程序库辅助实现). 此处为大家举一个简单的启动脚本文件例子,它为python命令行添加了按键自动补全内容和历史命令功能. [python@python ~]$ cat .python

  • python实现颜色rgb和hex相互转换的函数

    本文实例讲述了python实现颜色rgb和hex相互转换的函数.分享给大家供大家参考.具体分析如下: 下面的python代码提供了两个函数分别用来将rgb表示的颜色转换成hex值,hex转换成rgb,rgb为一个三个数的元祖,如(128,255,28),hex为数字876645 def hex2rgb(hexcolor): rgb = [(hexcolor >> 16) & 0xff, (hexcolor >> 8) & 0xff, hexcolor & 0

  • python实现读取命令行参数的方法

    本文实例讲述了python读取命令行参数的方法.分享给大家供大家参考.具体分析如下: 如果想对python脚本传参数,python中对应的argc, argv(c语言的命令行参数)是什么呢? 需要模块:sys 参数个数:len(sys.argv) 脚本名:    sys.argv[0] 参数1:     sys.argv[1] 参数2:     sys.argv[2] test.py: import sys print "脚本名:", sys.argv[0] for i in rang

  • python在linux中输出带颜色的文字的方法

    在开发项目过程中,为了方便调试代码,经常会向stdout中输出一些日志,默认的这些日志就直接显示在了终端中.而一般的应用服务器,第三方库,甚至服务器的一些通告也会在终端中显示,这样就搅乱了我们想要的信息. 我们可以通过对有用的信息设置不同颜色来达到醒目的效果,因为我平时都是在linux下开发,而linux终端中的颜色是用转义序列控制的,转义序列是以ESC开头,可以用\033完成相同的工作(ESC的ASCII码用十进制表示就是27,等于用八进制表示的33). 书写格式,和相关说明如下: 复制代码

  • python获取图片颜色信息的方法

    本文实例讲述了python获取图片颜色信息的方法.分享给大家供大家参考.具体分析如下: python的pil模块可以从图片获得图片每个像素点的颜色信息,下面的代码演示了如何获取图片所有点的颜色信息和每种颜色的数量. from PIL import Image image = Image.open("jb51.gif") image.getcolors() 返回结果如下 复制代码 代码如下: ..., (44, (72, 64, 55, 255)), (32, (231, 208, 14

  • Python编程实现控制cmd命令行显示颜色的方法示例

    本文实例讲述了Python编程实现控制cmd命令行显示颜色的方法.分享给大家供大家参考,具体如下: 基于win7 + python3.4 运行效果: import ctypes import sys '''Windows CMD命令行颜色''' # 句柄号 STD_INPUT_HANDLE = -10 STD_OUTPUT_HANDLE= -11 STD_ERROR_HANDLE = -12 # 前景色 FOREGROUND_BLACK = 0x0 # 黑 FOREGROUND_BLUE = 0

  • python获取从命令行输入数字的方法

    本文实例讲述了python获取从命令行输入数字的方法.分享给大家供大家参考.具体如下: #---------------------------------------- # Name: numerical_input.py # Author: Kevin Harris # Last Modified: 02/13/04 # Description: This Python script demonstrates # how to get numerical input # from the c

  • python通过pil为png图片填充上背景颜色的方法

    本文实例讲述了python通过pil为png图片填充上背景颜色的方法.分享给大家供大家参考.具体分析如下: png图片有些是没有背景颜色,如果希望以单色(比如白色)填充背景,可以使用下面的代码,这段代码将当前目录下的 jb51.net.png图片填充了白色背景. 使用指定的颜色的背景色即可,然后把该图片用alpha通道填充到该单色背景上.  比如下面使用白色背景: im = Image.open('jb51.net.png') x,y = im.size try: # 使用白色来填充背景 fro

  • 更改Python命令行交互提示符的方法

    一.定制Python的交互提示符 Python的默认交互提示符为">>>",但它是可以定制的. Python启动后,先寻找PYTHONSTARTUP环境变量,然后执行此文件中变量指定的执行代码. 一些Linux发布包提供了缺省的启动脚本,一般存放在其home目录,名为.pythonstartup."Tab完成"和"命令历史"这两个功能增强了提示符应用,两者都基于readline模块. 如果没有.pythonstartup文件,可

  • python实现颜色空间转换程序(Tkinter)

    本文主要基于colorsys实现,样例是从hls转换到rgb,如果要换颜色空间很容易只需要修改一个函数,具体内容如下 用到了Scale和Canvas组件. 运行效果图: 代码如下: from Tkinter import * import colorsys #操作后的响应函数 def update(* args): 'color' r,g,b = colorsys.hls_to_rgb(h.get() / 255.0, l.get() / 255.0, s.get() / 255.0) r,g,

  • Python实战之用tkinter库做一个鼠标模拟点击器

    前言 用Python做一个鼠标模拟点击器,可以实现多位置,定时,定次数,定区域随机位置点击,对于一些比较肝的游戏(痒痒鼠之类的),挂机非常有帮助,解放双手;定区域随机点击可以一定程度上防止系统检测出有使用脚本开挂的行为 import tkinter as tk import random import pyautogui as mouse from tkinter.messagebox import * 安装库 首先是今天要用到的几个必要的库:tkinter,random,pyautogui 没

  • 实现Python图形界面框架TkInter写GUI界面应用简介过程操作

    前言 它的底层是Tcl/Tk,先用起来再说,另外Python毕竟是面向对象语言,所以全文会使用到class和对象,尽量日后能满足开发项目的需求. (备注:Tcl/Tk 是一种简明,高效,可移植性好的编程语言.在信息产业领域具有广泛的应用.) Hello World 从Hello World写起,涉及到一个简单的文本控件Label,当然控件需要显示的容器,此处我们将其显示在一个Window上,也会使用一种布局方式pack() import tkinter as tk class RootWindo

  • Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解

    目录 1.项目介绍 2.快速上手 3.官方文档介绍 接口文档(APIDocumentation) 主题(Themes) 画廊(Gallery) 1.项目介绍 ttkbootstrap 是一个基于 tkinter 的界面美化库,使用这个工具可以开发出类似前端 bootstrap 风格的 tkinter 桌面程序.如果会 tkinter 学习起来就会非常简单,如果不会的话只要先花两三天的时间系统学习一下 tkinter 之后再来使用 bootstrap 也是一样. ttkbootstrap 不仅有丰

  • Python 图形界面框架TkInter之在源码中找pack方法

    目录 一.HelloWorld看pack() 二.pack()方法分析 三.pack_configure()方法分析 四.Label的继承结构 五.查看pack()方法源码的收获 前言: tkinter提供了3种布局管理方式: 1.pack 2.grid 3.place 每种布局管理器都非常有用,根据不同的需求,选择对应的布局方式,每个控件都可以使用pack作为布局管理器,从源码中看下pack()在哪里? 一.HelloWorld看pack() import tkinter   my_windo

  • Python GUI布局工具Tkinter入门之旅

    目录 图形用户界面 (GUI) 用于创建GUI的 Python 库 Tkinter 基础 Tkinter Widgets Label Button Entry Combobox Checkbutton Radio Button Scrolled Text Message Box SpinBox Geometry 组织布局 binding 函数 Images 和 Icons 计算器 APP 图形用户界面 (GUI) 图形用户界面 (GUI) 只不过是一个桌面应用程序,可帮助我们与计算机进行交互 像

  • Python基于Tkinter模块实现的弹球小游戏

    本文实例讲述了Python基于Tkinter模块实现的弹球小游戏.分享给大家供大家参考,具体如下: #!usr/bin/python #-*- coding:utf-8 -*- from Tkinter import * import Tkinter import random import time #创建小球的类 class Ball: def __init__(self,canvas,paddle,color): #参数:画布,球拍和颜色 self.canvas = canvas self

  • Python tkinter的grid布局及Text动态显示方法

    在python中gui编程有很多中选择,如果是相对简单的gui的话使用python自带的tkinter即可,但是由于tkinter没有详细的API文档,要使用起来比较麻烦,而且不够美观,如果是要求比较高的gui编程,推荐使用PyQt或者wxpython. 我在这里主要说一下tkinter中3种布局方式中的grid布局,在之前写个比较简单的软件的时候遇到了写问题,在此记录下来. 1. grid中的一些参数:需要声明的是,行列大小由该列/行中最大组件大小所决定!! column: 对应的放置的所在的

  • 详解python tkinter模块安装过程

    引言: 在Python3下运行Matplotlib之时,碰到了"No module named _tkinter"的问题,花费数小时进行研究解决,这里讲整个过程记录下来,并尝试分析过程中的解决思路利弊得失,以资后效,这里重点提示需要关注错误信息的分析,这个是第一现场. 环境介绍 任何技术问题的出现以及修复都是依赖于系统环境以及特定版本的,这里首先描述如下: Ubuntu: 17.10  Python: 3.6.1 基于virutalenv来切换不同的Python环境 tkinter的问

  • 使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二)

    上一篇我们写了怎么将xmind转换成想要的excel格式,这篇再讲一下用Python自带的tkinter库设计一个简单的gui界面,让我们的xmind路径,用例版本执行等都通过这个gui界面来输入,生成我们需要的excel文件. Python要生成gui,库还是比较多的比如wxpython,这个我看了下,感觉比较难懂,毕竟只是设计一个比较简单的gui界面,所以就使用了tkinter库,感觉这个还是比较方便易懂的,大家可以在这里学习tkinter库http://c.biancheng.net/py

随机推荐