Home » , , » Membuat Choice Editor Pada Grid

Membuat Choice Editor Pada Grid

Written By UbaidRahman on Monday, 21 April 2014 | 09:09


berawal dari script seperti ini, lalu saya coba impelementasikan pada Boa Constructor sebagai Visual Python. :-D
nah untuk membuat Choice Editor pada Grid atau combobox di dalam Grid sebenarnya hanya menggunakan fungsi yang sudah disedikan oleh python,tinggal memanggil library grid pada wx, untuk membuat choicenya yaitu menggunakan GridCellChoiceEditor
perhatikan contoh berikut :


import wx, wx.grid as grd

class MyGrid(grd.Grid):
    def __init__(self, parent):
        grd.Grid.__init__(self, parent, -1, pos=(10,40), size=(420,95))

        self.CreateGrid(3,3)
        self.RowLabelSize = 0
        self.ColLabelSize = 20

        attr = grd.GridCellAttr()
        attr.SetEditor(grd.GridCellChoiceEditor(["", "first", "second"], False))
        self.SetColAttr(1,attr)
        self.SetColSize(1,90)

        self.Bind(grd.EVT_GRID_CELL_LEFT_CLICK,self.onMouse)
        self.Bind(grd.EVT_GRID_SELECT_CELL,self.onCellSelected)
        self.Bind(grd.EVT_GRID_EDITOR_CREATED, self.onEditorCreated)

    def onMouse(self,evt):
        if evt.Col == 1:
            pass
            #wx.CallLater(100,self.toggleCheckBox)
        evt.Skip()

    def onCellSelected(self,evt):
        if evt.Col == 1 and evt.Row >= 1:
            wx.CallAfter(self.EnableCellEditControl)
        evt.Skip()

    def onEditorCreated(self,evt):
        if evt.Col == 1:
            pass
        evt.Skip()

class TestFrame(wx.Frame):
    def __init__(self, parent):
        wx.Frame.__init__(self, parent, -1, "Custom cell editor test", size=(250,200))
        panel = wx.Panel(self,style=0)

        grid = MyGrid(panel)
        grid.SetFocus()
        self.CentreOnScreen()

class MyApp(wx.App):
    def OnInit(self):
        frame = TestFrame(None)
        frame.Show(True)
        self.SetTopWindow(frame)
        return True

MyApp(0).MainLoop() 

Share this article :

0 comments:

Post a Comment

 
Support : Blog ubaid7rahman | Facebook | Twitter
Copyright © 2013. Belajar Python di Blog 7
Template Created by Ubaidur Rahman
Sidodadi Paiton Blogger