如何用 Python 写一个带 GUI 的科学计算程序

 我来答
月轮天唯五
2016-09-04 · TA获得超过377个赞
知道小有建树答主
回答量:387
采纳率:100%
帮助的人:161万
展开全部

强烈推荐使用Tk 库,非常简单。 下面是我正在写的界面,可以运行,后台还没处理好。不懂的可以问我。

#!python2  pymol
#coding: utf-8


from Tkinter import *
from ttk import *
from  math  import sin,asin,cos,acos 

class PredictGui(Frame):
    def __init__(self,parent=None):
        Frame.__init__(self,parent)
        self.pack(expand=YES,fill=BOTH)
        
        Label(self,text="generate cccc").pack(side=TOP)
        
        centerF=Frame(self)
        centerF.pack(expand=YES,fill=BOTH)
        Label(centerF,width=50,text="the coord of the center").pack(side=LEFT)
        self.xyz_var=StringVar()
        Entry(centerF,text=self.xyz_var,width=15).pack(side=LEFT)
        self.xyz_var.set('0 0 0')
        
        
        radiusF=Frame(self)
        radiusF.pack(side=TOP,fill=BOTH,expand=YES)
        Label(radiusF,text="the radius of the cc",width=50).pack(side=LEFT)
        self.r_var=DoubleVar()
        radius_Com=Combobox(radiusF,width=15,textvariable=self.r_var)
        radius_Com.pack(side=LEFT)
        radius_Com['values']=( 5.0,10.0,15.0,20.0, )
        radius_Com.set('select radius')
        radius_Com.bind("<<ComboboxSelected>>",self.selectradius)
        
        
        densityF=Frame(self)
        densityF.pack(expand=YES,fill=BOTH)
        Label(densityF,text="the density is 0-1",width=50).pack(side=LEFT)
        self.density_var=DoubleVar()
        Entry(densityF,text=self.density_var,width=15).pack(side=LEFT)
        

        
    def selectradius(event,self):
        '''
        '''        
        temp=asin(1.0/self.r_var.get())
        self.density_var.set(temp)
        
        

        
        
        
        
if __name__ == '__main__':
    mainW=PredictGui()
    mainW.mainloop()
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式