本文整理汇总了Golang中github.com/mattn/go-gtk/gtk.VBox类的典型用法代码示例。如果您正苦于以下问题:Golang VBox类的具体用法?Golang VBox怎么用?Golang VBox使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了VBox类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: CreateActivatableDemo
func CreateActivatableDemo(vbox *gtk.VBox) {
action_entry := gtk.NewAction("ActionEntry",
"Button attached to Action", "", gtk.STOCK_INFO)
action_entry.Connect("activate", func() {
fmt.Println("Action clicked")
})
frame1 := gtk.NewFrame("GtkActivatable interface demonstration")
frame1.SetBorderWidth(5)
hbox2 := gtk.NewHBox(false, 5)
hbox2.SetSizeRequest(400, 50)
hbox2.SetBorderWidth(5)
button1 := gtk.NewButton()
button1.SetSizeRequest(250, 0)
button1.SetRelatedAction(action_entry)
hbox2.PackStart(button1, false, false, 0)
hbox2.PackStart(gtk.NewVSeparator(), false, false, 0)
button2 := gtk.NewButtonWithLabel("Hide Action")
button2.SetSizeRequest(150, 0)
button2.Connect("clicked", func() {
action_entry.SetVisible(false)
fmt.Println("Hide Action")
})
hbox2.PackStart(button2, false, false, 0)
button3 := gtk.NewButtonWithLabel("Unhide Action")
button3.SetSizeRequest(150, 0)
button3.Connect("clicked", func() {
action_entry.SetVisible(true)
fmt.Println("Show Action")
})
hbox2.PackStart(button3, false, false, 0)
frame1.Add(hbox2)
vbox.PackStart(frame1, false, true, 0)
}
示例2: configure_board
func configure_board(vbox *gtk.VBox) {
drawingarea = gtk.NewDrawingArea()
drawingarea.Connect("configure-event", func() {
if pixmap != nil {
pixmap.Unref()
}
var allocation gtk.Allocation
drawingarea.GetAllocation(&allocation)
pixmap = gdk.NewPixmap(drawingarea.GetWindow().GetDrawable(), allocation.Width, allocation.Height, 24)
gc = gdk.NewGC(pixmap.GetDrawable())
display_init_grid(gc, pixmap)
})
drawingarea.Connect("button-press-event", func(ctx *glib.CallbackContext) {
// Check if the game is running and if player click in the goban
if stopGame == true || stopClick == true {
return
}
if gdkwin == nil {
gdkwin = drawingarea.GetWindow()
}
arg := ctx.Args(0)
mev := *(**gdk.EventMotion)(unsafe.Pointer(&arg))
var mt gdk.ModifierType
var x, y int
if mev.IsHint != 0 {
gdkwin.GetPointer(&x, &y, &mt)
} else {
x, y = int(mev.X), int(mev.Y)
}
x = ((x - INTER/2) / INTER)
y = ((y - INTER/2) / INTER)
if x < 0 || x >= 19 || y < 0 || y >= 19 {
return
}
// end check
good, vic := event_play(x, y)
if good && iamode && stopGame == false && stopClick == false && vic == 0 {
calc_ai()
}
if good && !iamode && stopGame == false && stopClick == false && hint {
calcHint <- true
}
})
drawingarea.Connect("expose-event", func() {
if pixmap != nil {
drawingarea.GetWindow().GetDrawable().DrawDrawable(gc, pixmap.GetDrawable(), 0, 0, 0, 0, -1, -1)
}
})
drawingarea.SetEvents(int(gdk.POINTER_MOTION_MASK | gdk.POINTER_MOTION_HINT_MASK | gdk.BUTTON_PRESS_MASK))
vbox.Add(drawingarea)
}
示例3: buildList
func (g *Gui) buildList(vbox *gtk.VBox) {
frame := gtk.NewFrame("Device List")
framebox := gtk.NewVBox(false, 1)
frame.Add(framebox)
vbox.Add(frame)
g.Status = gtk.NewStatusbar()
vbox.PackStart(g.Status, false, false, 0)
g.Store = gtk.NewListStore(glib.G_TYPE_STRING, glib.G_TYPE_STRING)
treeview := gtk.NewTreeView()
framebox.Add(treeview)
treeview.SetModel(g.Store)
treeview.AppendColumn(gtk.NewTreeViewColumnWithAttributes("Device", gtk.NewCellRendererText(), "text", 0))
treeview.AppendColumn(gtk.NewTreeViewColumnWithAttributes("Name", gtk.NewCellRendererText(), "text", 1))
treeview.GetSelection().SetMode(gtk.SELECTION_SINGLE)
controls := gtk.NewHBox(true, 0)
g.Start = gtk.NewButtonWithLabel("Start Sync")
g.Start.Clicked(func() {
var iter gtk.TreeIter
var device glib.GValue
selection := treeview.GetSelection()
if selection.CountSelectedRows() > 0 {
selection.GetSelected(&iter)
g.Store.GetValue(&iter, 0, &device)
MainGui.notify("Start Writing On: " + device.GetString())
doWrite(device.GetString())
} else {
MainGui.notify("No Active Selection")
}
})
controls.Add(g.Start)
g.Recheck = gtk.NewButtonWithLabel("Rescan")
g.Recheck.Clicked(func() {
devices := SearchValid()
MainGui.Store.Clear()
for _, x := range devices {
MainGui.appendItem("/dev/hidraw"+strconv.FormatUint(x.SeqNum(), 10), x.SysAttrValue("product"))
}
MainGui.notify("Scanning Done")
})
controls.Add(g.Recheck)
framebox.PackStart(controls, false, false, 0)
}
示例4: CreateMenuAndToolbar
func CreateMenuAndToolbar(w *gtk.Window, vbox *gtk.VBox) {
action_group := gtk.NewActionGroup("my_group")
ui_manager := CreateUIManager()
accel_group := ui_manager.GetAccelGroup()
w.AddAccelGroup(accel_group)
AddFileMenuActions(action_group)
AddEditMenuActions(action_group)
AddChoicesMenuActions(action_group)
ui_manager.InsertActionGroup(action_group, 0)
menubar := ui_manager.GetWidget("/MenuBar")
vbox.PackStart(menubar, false, false, 0)
toolbar := ui_manager.GetWidget("/ToolBar")
vbox.PackStart(toolbar, false, false, 0)
eventbox := gtk.NewEventBox()
vbox.PackStart(eventbox, false, false, 0)
// label := gtk.NewLabel("Right-click to see the popup menu.")
// vbox.PackStart(label, false, false, 0)
}
示例5: menu_bar
func menu_bar(vbox *gtk.VBox) {
menubar := gtk.NewMenuBar()
vbox.PackStart(menubar, false, false, 0)
buttons := gtk.NewAlignment(0, 0, 0, 0)
checkbox := gtk.NewAlignment(1, 0, 0, 0)
newPlayerGameButton := gtk.NewButtonWithLabel("Player vs Player")
newIaGameButton := gtk.NewButtonWithLabel("Player vs AI")
info = gtk.NewLabel("Hint: Not yet")
threeCheckBox := gtk.NewCheckButtonWithLabel("Three and three")
endCheckBox := gtk.NewCheckButtonWithLabel("Unbreakable end")
hintCheckBox := gtk.NewCheckButtonWithLabel("Hint")
hbox := gtk.NewHBox(false, 1)
hbox0 := gtk.NewHBox(false, 1)
hbox1 := gtk.NewHBox(false, 1)
hbox0.Add(newPlayerGameButton)
hbox0.Add(newIaGameButton)
hbox1.Add(hintCheckBox)
hbox1.Add(threeCheckBox)
hbox1.Add(endCheckBox)
buttons.Add(hbox0)
checkbox.Add(hbox1)
hbox.Add(buttons)
hbox.Add(info)
hbox.Add(checkbox)
vbox.PackStart(hbox, false, true, 0)
cascademenu := gtk.NewMenuItemWithMnemonic("_Game")
menubar.Append(cascademenu)
submenu := gtk.NewMenu()
cascademenu.SetSubmenu(submenu)
playermenuitem := gtk.NewMenuItemWithMnemonic("_Player Vs Player")
playermenuitem.Connect("activate", func() {
gc.SetRgbFgColor(gdk.NewColor("grey"))
pixmap.GetDrawable().DrawRectangle(gc, true, 0, 0, -1, -1)
game = Gomoku{make([]int, 361), true, game.endgameTake, game.doubleThree, 1, [2]int{10, 10}, 0}
player = 1
countTake = 0
iamode = false
display_init_grid(gc, pixmap)
drawingarea.Hide()
drawingarea.Show()
stopGame = false
stopClick = false
context_id := statusbar.GetContextId("go-gtk")
statusbar.Push(context_id, "(not so) Proudly propulsed by the inglorious Gomoku Project, with love, and Golang!")
})
submenu.Append(playermenuitem)
newPlayerGameButton.Clicked(func() {
playermenuitem.Activate()
})
iamenuitem := gtk.NewMenuItemWithMnemonic("_Player Vs AI")
iamenuitem.Connect("activate", func() {
gc.SetRgbFgColor(gdk.NewColor("grey"))
pixmap.GetDrawable().DrawRectangle(gc, true, 0, 0, -1, -1)
game = Gomoku{make([]int, 361), true, game.endgameTake, game.doubleThree, 1, [2]int{10, 10}, 0}
player = 1
countTake = 0
iamode = true
display_init_grid(gc, pixmap)
drawingarea.Hide()
drawingarea.Show()
stopGame = false
stopClick = false
context_id := statusbar.GetContextId("go-gtk")
statusbar.Push(context_id, "(not so) Proudly propulsed by the inglorious Gomoku Project, with love, and Golang!")
})
submenu.Append(iamenuitem)
newIaGameButton.Clicked(func() {
iamenuitem.Activate()
})
menuitem = gtk.NewMenuItemWithMnemonic("E_xit")
menuitem.Connect("activate", func() {
gtk.MainQuit()
})
submenu.Append(menuitem)
threeCheckBox.Connect("toggled", func() {
if game.doubleThree == false {
game.doubleThree = true
} else {
game.doubleThree = false
}
})
endCheckBox.Connect("toggled", func() {
if game.endgameTake == false {
game.endgameTake = true
} else {
game.endgameTake = false
}
})
hintCheckBox.Connect("toggled", func() {
if hint == false {
hint = true
calcHint <- true
} else {
hint = false
}
//.........这里部分代码省略.........
示例6: status_bar
func status_bar(vbox *gtk.VBox) {
statusbar = gtk.NewStatusbar()
context_id := statusbar.GetContextId("go-gtk")
statusbar.Push(context_id, "(not so) Proudly propulsed by the inglorious Gomoku Project, with love, and Golang!")
vbox.PackStart(statusbar, false, false, 0)
}