Seite 1 von 1

Listbox Buttons Dynamisch erstellen

Verfasst: Sonntag 2. März 2008, 17:56
von sea-live
Servus das geht doch sicherlich auich eleganter zu lösen

oder muss jeder button einzel erstellt werden der rückgabewert des Buttons
in druck()
sollte der listenname und das symbol sein.

da ich ein chart ausdrucken will wäre das ganze in wx besser da es hier einige plot funktionen gibt geht aber auch so denk ich

Code: Alles auswählen

# -*- coding: iso-8859-15 -*-


import Tkinter as tk


class Auswahl:
    tecdax = ['MOR.DE','IDS.DE','GPC.DE','FNT.DE','ES6.DE','DRW3.DE',
                  'EPC.DE','CGY.DE','BC8.DE','BBZ.DE','AUS.DE','AIX.DE',
                  'AFX.DE','KBC.DE','ADV.DE','MTH.DE','NDX1.DE','PFV.DE',
                  'QCE.DE','QIA.DE','QSC.DE','RSI.DE','SNG.DE','SOW.DE',
                  'SWV.DE','TA6.DE','UTDI.DE','VTW.DE','WDI.DE']
          
    mdax=['CLS1.DE','ALT.DE','AMB2.DE','AQU.DE','ARL.DE','ARO.DE',
                'AWD.DE','BOS3.DE','BEI.DE','DEQ.DE','DOU.DE','EAD.DE',
                'FRA.DE','FRE3.DE','G1A.DE','GBF.DE','GFJ.DE','HDD.DE',
                'DEZ.DE','HEI.DE','HNR1.DE','IKB.DE','HOT.DE','IVG.DE',
                'IWK.DE','KCO.DE','KRN.DE','LEO.DE','LXS.DE','MLP.DE',
                'MTX.DE','NDA.DE','PFD4.DE','PRA.DE','PRE.DE','PUM.DE',
                'PSM.DE','RHK.DE','RHM.DE','SAZ.DE','SDF.DE','SGL.DE',
                'SY1.DE','SZG.DE','SZU.DE','TGM.DE','TNH.DE','VOS.DE',
                'WCH.DE','WIN.DE']
    cdax=['IUR.DE','PIT.DE','HUL.DE','SIM.DE','MNV6.DE','RIN7.DE',
                'TBB.DE','LEC.DE','MAF.DE','VGT.DE','YMOS','YMO.DE','SFP1.DE',
                'DKA.DE','VMR.DE','STR.DE','BMO.DE','GARY.DE','COD.DE',
                'MOE.DE','AUT.DE','SIN.DE','EIS.DE','SHF.DE','MAU.DE',
                'BLAG.DE','BLN.DE','BJU.DE','MPR.DE','OAR.DE','FRO.DE',
                'PKB.DE','T1C.DE','UUU.DE','VSC.DE','AAA.DE','ACV.DE',
                'AGV.DE','AHH.DE','AAH3.DE','LUM.DE','RBX.DE','NIE.DE',
                'AQU.DE','ACW.DE','AWD.DE','AX33.DE','ARL.DE','ABO.DE',
                'RSB.DE','HNG.DE','LKI.DE','ADC.DE','ADS.DE','ADL.DE',
                'AAH.DE','ADJ.DE','ADV.DE','DVN1.DE','AP8.DE','AGI.DE',
                'DPW.DE','DPB.DE','DTE.DE']
    sdax=['AB1.DE','B5A.DE','AOX.DE','BAD.DE','BHS.DE','BYW6.DE','COM.DE',
                'D9C.DE','DAZ.DE','DBA.DE','DSJ.DE','DUE.DE','DWNI.DE','DYK3.DE',
                'EEX.DE','ESC.DE','EV4.DE','FIE.DE','EVD.DE','FPE3.DE','GFK.DE',
                'GIL.DE','GLJ.DE','GMM.DE','GWI1.DE','GXI.DE','HG1.DE','HXCI.DE',
                'INH.DE','IYP.DE','JUN3.DE','KBU.DE','KWS.DE','MDN.DE','MPC.DE',
                'MVV1.DE','O2C.DE','P1Z.DE','RAA.DE','SGS.DE','SIX2.DE','SKB.DE',
                'SPR.DE','T3C.DE','TEG.DE','TTK.DE','VIA.DE','WAC.DE','WAS.DE',
                'ZIL2.DE']
    dax30=['ADS.DE','ALV.DE','BAS.DE','BAY.DE','BMW.DE','CBK.DE',
                 'DAI.DE','DB1.DE','DBK.DE','DPB.DE','DPW.DE','DTE.DE',
                 'EOA.DE','FME.DE','HEN3.DE','HRX.DE','IFX.DE','LHA.DE',
                 'LIN.DE','MUV2.DE','MAN.DE','MEO.DE','MRK.DE','RWE.DE',
                 'SIE.DE','TKA.DE','TUI1.DE','VOW.DE','SAP.DE']

    symbollisten = {'tecdax':tecdax, 'mdax':mdax,'cdax':cdax,'sdax':sdax,'dax30':dax30}
      
     
       
       
    def __init__(self):
        self.root = tk.Tk()
        self.auswahlframe = tk.LabelFrame(self.root, text='Auswahlfeld')
        self.auswahlframe.pack(fill=tk.X)
        self.anzeigeframe = tk.LabelFrame(self.root,
                                                text='Treffer in der Auswahl')
        self.anzeigeframe.pack(fill=tk.X)
        self.var_symbol=tk.StringVar()

        self.buttons = list()
        self.auswahlbuttons()
        self.neu = tk.Button(self.root, text='CLOSE', command=self.close)
        self.neu.pack()
       
        self.root.mainloop()

       
    def close():
         root.destroy()

    
    def auswahlbuttons(self):
        """
        for key,value in self.symbollisten.iteritems():
            tlabel = tk.Label(self.auswahlframe, text='Symbol'+key+':')
            tlabel.pack(side=tk.LEFT)
            self.buttons.append(tlabel)
            self.optionTecdax = tk.OptionMenu(self.auswahlframe, self.var_symbol,
                                        command=self.druck,
                                        *self.value)
            self.optionTecdax.pack(side=tk.LEFT)
            self.buttons.append(self.optionTecdax)

        """
        tlabel = tk.Label(self.auswahlframe, text='SymbolTecdax:')
        tlabel.pack(side=tk.LEFT)
        self.buttons.append(tlabel)
        self.optionTecdax = tk.OptionMenu(self.auswahlframe, self.var_symbol,
                                        command=self.druck,
                                        *self.tecdax)
        self.optionTecdax.pack(side=tk.LEFT)
        self.buttons.append(self.optionTecdax)

        mlabel = tk.Label(self.auswahlframe, text='SymbolMdax: ')
        mlabel.pack(side=tk.LEFT)
        self.buttons.append(mlabel)
        self.optionMdax = tk.OptionMenu(self.auswahlframe, self.var_symbol,
                                        command=self.druck,
                                        *self.mdax)
        self.optionMdax.pack(side=tk.LEFT)
        self.buttons.append(self.optionMdax)
        
        # und so weiter
         
    def druck(self,event=None):
        print self.var_symbol.get()

    
 
if __name__ == '__main__':
    Auswahl()