• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Golang termui.NewGauge函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Golang中github.com/gizak/termui.NewGauge函数的典型用法代码示例。如果您正苦于以下问题:Golang NewGauge函数的具体用法?Golang NewGauge怎么用?Golang NewGauge使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了NewGauge函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。

示例1: main

func main() {
	err := termui.Init()
	if err != nil {
		panic(err)
	}
	defer termui.Close()

	termui.UseTheme("helloworld")

	g0 := termui.NewGauge()
	g0.Percent = 40
	g0.Width = 50
	g0.Height = 3
	g0.Border.Label = "Slim Gauge"
	g0.BarColor = termui.ColorRed
	g0.Border.FgColor = termui.ColorWhite
	g0.Border.LabelFgColor = termui.ColorCyan

	g2 := termui.NewGauge()
	g2.Percent = 60
	g2.Width = 50
	g2.Height = 3
	g2.PercentColor = termui.ColorBlue
	g2.Y = 3
	g2.Border.Label = "Slim Gauge"
	g2.BarColor = termui.ColorYellow
	g2.Border.FgColor = termui.ColorWhite

	g1 := termui.NewGauge()
	g1.Percent = 30
	g1.Width = 50
	g1.Height = 5
	g1.Y = 6
	g1.Border.Label = "Big Gauge"
	g1.PercentColor = termui.ColorYellow
	g1.BarColor = termui.ColorGreen
	g1.Border.FgColor = termui.ColorWhite
	g1.Border.LabelFgColor = termui.ColorMagenta

	g3 := termui.NewGauge()
	g3.Percent = 50
	g3.Width = 50
	g3.Height = 3
	g3.Y = 11
	g3.Border.Label = "Gauge with custom label"
	g3.Label = "{{percent}}% (100MBs free)"
	g3.LabelAlign = termui.AlignRight

	termui.Render(g0, g1, g2, g3)

	<-termui.EventCh()
}
开发者ID:j4ustin,项目名称:go-ethereum,代码行数:52,代码来源:gauge.go


示例2: AdjustMemory

func (t *TerminalUI) AdjustMemory(stats Statistics) {
	// memory gauges
	mem := make([]*ui.Gauge, len(stats.Instances))
	for i, idx := range stats.Instances {
		// show max 8 instances
		if i > 7 {
			break
		}

		memory := uint64(stats.Data[idx].Stats.Usage.Memory)
		quota := uint64(stats.Data[idx].Stats.MemoryQuota)
		percent := int(math.Ceil((float64(memory) / float64(quota)) * 100.0))
		mem[i] = ui.NewGauge()
		mem[i].Percent = percent
		mem[i].Height = 13 - min(len(stats.Instances), 8)
		mem[i].Border.Label = fmt.Sprintf("Memory - Instance %d: %d%% (%s / %s)",
			i, percent, bytefmt.ByteSize(memory), bytefmt.ByteSize(quota))
		mem[i].Border.FgColor = ui.ColorWhite
		mem[i].Border.LabelFgColor = ui.ColorWhite
		mem[i].BarColor = colors[i%6]
		mem[i].PercentColor = ui.ColorWhite
	}
	t.Memory = mem

	// update layout
	ui.Body.Rows = []*ui.Row{
		ui.NewRow(
			ui.NewCol(3, 0, t.Usage),
			ui.NewCol(3, 0, t.Summary),
			ui.NewCol(6, 0, t.Disk)),
		ui.NewRow(
			ui.NewCol(6, 0, t.CPU),
			t.newMemCol(6, 0, t.Memory)),
	}
}
开发者ID:swisscom,项目名称:cf-statistics-plugin,代码行数:35,代码来源:terminal.go


示例3: Init

func (w *ChunkWidget) Init() {
	g := termui.NewGauge()
	g.Percent = 10
	g.Width = 50
	g.Height = 3
	g.Y = 11
	g.Border.Label = "> " + w.title + " chunks <"
	g.Label = "test"
	g.LabelAlign = termui.AlignRight
	g.BarColor = termui.ColorGreen
	// g.PercentColor = termui.ColorYellow

	w.bc = g

	go func() {
		for {
			// TODO: refresh data here via channel or something
			s := gen.MongosMonitor()

			if max3(s.GetStats().ChunkDistribution) == 0 {
				w.bc.Percent = 0
			} else {
				w.bc.Percent = w.getChunkCount(s.GetStats())
			}
			w.bc.Label = fmt.Sprintf("chunks: %d", s.GetStats().ChunkDistribution[w.shard])
			w.bc.Border.Label = "> " + w.title + " - " + w.bc.Label + " <"

			time.Sleep(1 * time.Second)
		}
	}()
}
开发者ID:rzh,项目名称:montu,代码行数:31,代码来源:chunk.go


示例4: titleWidget

// titleWidget Provides the title bar
func titleWidget() *termui.Gauge {
	t := termui.NewGauge()
	t.Height = 1
	t.Border = false

	return t
}
开发者ID:avadhutp,项目名称:lazarus,代码行数:8,代码来源:widgets.go


示例5: main

func main() {
	err := ui.Init()
	if err != nil {
		panic(err)
	}
	defer ui.Close()

	p := ui.NewPar(":PRESS q TO QUIT DEMO")
	p.Height = 3
	p.Width = 50
	p.TextFgColor = ui.ColorWhite
	p.BorderLabel = "Text Box"
	p.BorderFg = ui.ColorCyan

	g := ui.NewGauge()
	g.Percent = 50
	g.Width = 50
	g.Height = 3
	g.Y = 11
	g.BorderLabel = "Gauge"
	g.BarColor = ui.ColorRed
	g.BorderFg = ui.ColorWhite
	g.BorderLabelFg = ui.ColorCyan

	ui.Render(p, g) // feel free to call Render, it's async and non-block
}
开发者ID:ringtail,项目名称:pug,代码行数:26,代码来源:main.go


示例6: newTerminalUI

func newTerminalUI(appName string) error {
	if err := ui.Init(); err != nil {
		return err
	}
	ui.UseTheme("helloworld")

	// usage text
	usageText := fmt.Sprintf(`Show live statistics for [%s]

:Press 'q' or 'ctrl-c' to exit
:Press 'PageUp' to increase app instances
:Press 'PageDown' to decrease app instances`, appName)
	usage := ui.NewPar(usageText)
	usage.Height = 12
	usage.TextFgColor = ui.ColorWhite
	usage.Border.Label = "Usage"
	usage.Border.FgColor = ui.ColorCyan

	// summary text
	summary := ui.NewPar("")
	summary.Height = 12
	summary.TextFgColor = ui.ColorRed
	summary.Border.Label = "Summary"
	summary.Border.FgColor = ui.ColorCyan

	// cpu sparklines
	data := [400]int{}
	line := ui.NewSparkline()
	line.Data = data[:]
	line.Height = 4
	line.LineColor = colors[0]
	cpu := ui.NewSparklines(line)
	cpu.Height = 7
	cpu.Border.Label = "CPU Usage"

	// memory gauges
	mem := make([]*ui.Gauge, 1)
	for i := range mem {
		mem[i] = ui.NewGauge()
		mem[i].Percent = 0
		mem[i].Height = 5
	}

	// disk bars
	disk := ui.NewBarChart()
	disk.Border.Label = "Disk Usage (in MB)"
	disk.Data = []int{0, 0, 0, 0, 0, 0, 0, 0}
	disk.Height = 12
	disk.BarWidth = 10
	disk.DataLabels = []string{"I: 0", "I: 1", "I: 2", "I: 3", "I: 4", "I: 5", "I: 6", "I: 7"}
	disk.TextColor = ui.ColorWhite
	disk.BarColor = ui.ColorYellow
	disk.NumColor = ui.ColorWhite

	term = &TerminalUI{ui.Body, usage, summary, cpu, mem, disk}
	return nil
}
开发者ID:swisscom,项目名称:cf-statistics-plugin,代码行数:57,代码来源:terminal.go


示例7: AddGauge

func (cte *CpuTabElems) AddGauge(key string, Y int, width int) *termui.Gauge {
	cte.GMap[key] = termui.NewGauge()
	cte.GMap[key].Width = width
	cte.GMap[key].Height = 3
	cte.GMap[key].Y = Y
	cte.GMap[key].Border.Label = key
	cte.GMap[key].Percent = 0 //int(val.user + val.nice + val.system)
	return cte.GMap[key]
}
开发者ID:himanshugpt,项目名称:termui,代码行数:9,代码来源:ttop.go


示例8: main

func main() {
	err := ui.Init()
	fmt.Println(daemon.UpSince())
	if err != nil {
		fmt.Println("Could not initialise UI")
	}
	defer ui.Close()

	ut, _ := daemon.Uptime()
	p := ui.NewPar(ut.String())
	p.Height = 3
	p.Width = 50
	p.TextFgColor = ui.ColorWhite
	p.Border.Label = "Uptime"
	p.Border.FgColor = ui.ColorCyan

	g0 := ui.NewGauge()
	g0.Percent = 40
	g0.Width = 50
	g0.Height = 3
	g0.Border.Label = "Memory"
	g0.BarColor = ui.ColorRed
	g0.Border.FgColor = ui.ColorWhite
	g0.Border.LabelFgColor = ui.ColorCyan

	g2 := ui.NewGauge()
	g2.Percent = 60
	g2.Width = 50
	g2.Height = 3
	g2.PercentColor = ui.ColorBlue
	g2.Y = 3
	g2.Border.Label = "CPU"
	g2.BarColor = ui.ColorYellow
	g2.Border.FgColor = ui.ColorWhite

	ui.Body.AddRows(ui.NewRow(ui.NewCol(6, 0, g0), ui.NewCol(6, 0, p)),
		ui.NewRow(ui.NewCol(6, 0, g2)))
	ui.Body.Align()
	ui.Render(ui.Body)
	go updateMemCPU(g2, g0)
	go updateUptime(p)
	<-ui.EventCh()
}
开发者ID:nindalf,项目名称:gotop,代码行数:43,代码来源:main.go


示例9: main

func main() {
	err := termui.Init()
	if err != nil {
		panic(err)
	}
	defer termui.Close()

	termui.UseTheme("helloworld")

	g0 := termui.NewGauge()
	g0.Percent = 40
	g0.Width = 50
	g0.Height = 3
	g0.Border.Label = "Slim Gauge"
	g0.BarColor = termui.ColorRed
	g0.Border.FgColor = termui.ColorWhite
	g0.Border.LabelFgColor = termui.ColorCyan

	g2 := termui.NewGauge()
	g2.Percent = 60
	g2.Width = 50
	g2.Height = 3
	g2.PercentColor = termui.ColorBlue
	g2.Y = 3
	g2.Border.Label = "Slim Gauge"
	g2.BarColor = termui.ColorYellow
	g2.Border.FgColor = termui.ColorWhite

	g1 := termui.NewGauge()
	g1.Percent = 30
	g1.Width = 50
	g1.Height = 5
	g1.Y = 6
	g1.Border.Label = "Big Gauge"
	g1.PercentColor = termui.ColorYellow
	g1.BarColor = termui.ColorGreen
	g1.Border.FgColor = termui.ColorWhite
	g1.Border.LabelFgColor = termui.ColorMagenta

	termui.Render(g0, g1, g2)

	termbox.PollEvent()
}
开发者ID:4honor,项目名称:termui,代码行数:43,代码来源:gauge.go


示例10: main

func main() {

	err := termui.Init()
	if err != nil {
		panic(err)
	}
	defer termui.Close()

	sinps := (func() []float64 {
		n := 220
		ps := make([]float64, n)
		for i := range ps {
			ps[i] = 1 + math.Sin(float64(i)/5)
		}
		return ps
	})()

	p := termui.NewPar(":PRESS q or Esc TO QUIT DEMO Hello World")
	p.Height = 3
	p.Width = 50
	p.TextFgColor = termui.ColorWhite
	p.BorderLabel = "Hello-World"
	p.BorderFg = termui.ColorCyan

	lc1 := termui.NewLineChart()
	lc1.BorderLabel = "dot-mode Line Chart"
	lc1.Mode = "dot"
	lc1.Data = sinps
	lc1.Width = 26
	lc1.Height = 12
	lc1.X = 51
	lc1.DotStyle = '+'
	lc1.AxesColor = termui.ColorWhite
	lc1.LineColor = termui.ColorYellow | termui.AttrBold

	g0 := termui.NewGauge()
	g0.Percent = 40
	g0.Width = 50
	g0.Height = 3
	g0.Y = 3
	g0.BorderLabel = "Slim Gauge"
	g0.BarColor = termui.ColorRed
	g0.BorderFg = termui.ColorWhite
	g0.BorderLabelFg = termui.ColorCyan

	termui.Render(p, g0, lc1)

	termui.Handle("/sys", func(e termui.Event) {
		k, ok := e.Data.(termui.EvtKbd)
		if ok && (k.KeyStr == "q" || k.KeyStr == "<escape>") {
			termui.StopLoop()
		}
	})
	termui.Loop()
}
开发者ID:VonC,项目名称:hello-world-go,代码行数:55,代码来源:main.go


示例11: NewMemTabElems

func NewMemTabElems(width int) *MemTabElems {
	g := termui.NewGauge()
	g.Width = width
	g.Height = 3
	g.Y = 0

	sline := termui.NewSparkline()
	sline.Title = "MEM"
	sline.Height = 8

	sls := termui.NewSparklines(sline)
	sls.Width = width
	sls.Height = 12
	sls.Y = 3
	return &MemTabElems{Gauge: g, SLines: sls}
}
开发者ID:himanshugpt,项目名称:termui,代码行数:16,代码来源:ttop.go


示例12: Init

func (m *MsgLossChart) Init(cfUI terminal.UI) {
	m.sentByIP = make(map[string]int64)
	m.receivedByIP = make(map[string]int64)
	m.cfUI = cfUI
	m.graph = termui.NewGauge()
	m.graph.Width = 50
	m.graph.Height = 8
	m.graph.PercentColor = termui.ColorBlue
	m.graph.Y = 0
	m.graph.X = 0
	m.graph.BorderLabel = "(%)Msg Loss Between Metron and Doppler"
	m.graph.BarColor = termui.ColorYellow
	m.graph.BorderFg = termui.ColorWhite

	m.validOrigins = []string{"MetronAgent", "DopplerServer"}
	m.validMetricNames = []string{"DopplerForwarder.sentMessages", "tlsListener.receivedMessageCount", "dropsondeListener.receivedMessageCount"}

}
开发者ID:wfernandes,项目名称:firehose-stats,代码行数:18,代码来源:msgLoss.go


示例13: refreshActiveDownloadWidgets

func (u *Ui) refreshActiveDownloadWidgets() {
	u.activeDownloadWidgets = make([]*termui.Gauge, 0, len(u.activeDownloads))

	uris := make([]string, 0, len(u.activeDownloads))
	for uri, _ := range u.activeDownloads {
		uris = append(uris, uri)
	}
	sort.Strings(uris)

	for _, uri := range uris {
		progress := u.activeDownloads[uri]

		widget := termui.NewGauge()
		widget.Height = 3
		widget.Percent = int(progress.Percent * 100)
		widget.Border.Label = "Downloading: " + uri
		widget.Label = fmt.Sprintf("{{percent}}%% (%s)", curl.PrettySpeedString(progress.Speed))

		u.activeDownloadWidgets = append(u.activeDownloadWidgets, widget)
	}
}
开发者ID:bigwhoop,项目名称:podcastd,代码行数:21,代码来源:ui.go


示例14: NewBar

func NewBar(width int, x int, y int, label string, targetBufferer *[]termui.Bufferer) *Bar {
	e := &Bar{}

	e.Height = 3
	e.Width = width
	e.X = x
	e.Y = y

	e.Gauge = termui.NewGauge()
	e.Gauge.Percent = 0
	e.Gauge.Percent = 0
	e.Gauge.Width = width - 6
	e.Gauge.Height = e.Height
	e.Gauge.Border.Label = ""
	e.Gauge.BgColor = termui.ColorBlack
	e.Gauge.BarColor = termui.ColorGreen
	e.Gauge.Border.FgColor = termui.ColorWhite
	e.Gauge.Border.LabelFgColor = termui.ColorCyan
	e.Gauge.HasBorder = true
	e.Gauge.LabelAlign = termui.AlignRight

	e.Label = termui.NewPar("")
	e.Label.Width = 20
	e.Label.Height = 1
	e.Label.TextFgColor = termui.ColorWhite
	e.Label.HasBorder = false
	e.Label.Text = label

	e.Bufferer = append(e.Bufferer, e.Gauge)
	e.Bufferer = append(e.Bufferer, e.Label)
	*targetBufferer = append(*targetBufferer, e.Bufferer...)

	e.ValueChannel = make(chan int, 100)
	go e.readValueChannel()

	e.Invalidate()

	return e
}
开发者ID:TilmanGriesel,项目名称:gtop,代码行数:39,代码来源:bar.go


示例15: RunTerminalUI

func RunTerminalUI() {

	err := ui.Init()
	if err != nil {
		panic(err)
	}
	defer ui.Close()

	// var ps []float64
	//
	// jobrateStream := (func() []float64 {
	//
	// 	jInfo := GetInfoObj()
	// 	ps = append(ps, float64(jInfo.JobRate))
	// 	return ps
	//
	// })
	// ui.UseTheme("helloworld")
	// lc := ui.NewLineChart()
	// lc.Border.Label = "JobRate"
	// lc.Data = jobrateStream()
	// lc.Width = 100
	// lc.Height = 20
	// lc.X = 0
	// lc.Y = 0
	// lc.AxesColor = ui.ColorWhite
	// lc.LineColor = ui.ColorRed | ui.AttrBold
	// lc.Mode = "dot"
	BufferPercent := func() int {

		return int(100 * len(resultsToDispatch) / Config.DispatchBufferSize)

	}

	gspeed := ui.NewGauge()
	gspeed.Percent = 50
	gspeed.Width = 50
	gspeed.Height = 3
	gspeed.Y = 8
	gspeed.X = 0
	gspeed.Border.Label = "Job Rate"
	gspeed.BarColor = ui.ColorGreen
	gspeed.Border.FgColor = ui.ColorWhite
	gspeed.Border.LabelFgColor = ui.ColorYellow

	greq := ui.NewGauge()
	greq.Percent = 50
	greq.Width = 50
	greq.Height = 3
	greq.Y = 0
	greq.X = 0
	greq.Border.Label = "Requests Buffer"
	greq.BarColor = ui.ColorYellow
	greq.Border.FgColor = ui.ColorWhite
	greq.Border.LabelFgColor = ui.ColorCyan

	g := ui.NewGauge()
	g.Percent = 50
	g.Width = 50
	g.Height = 3
	g.Y = 4
	g.Border.Label = "Results Buffer"
	g.BarColor = ui.ColorRed
	g.Border.FgColor = ui.ColorWhite
	g.Border.LabelFgColor = ui.ColorCyan

	list_msg := ui.NewList()
	list_msg.ItemFgColor = ui.ColorYellow
	list_msg.Border.Label = "Log"
	list_msg.Height = 10
	list_msg.Y = 14
	list_msg.X = 30
	list_msg.Width = 25

	list := ui.NewList()
	list.ItemFgColor = ui.ColorYellow
	list.Border.Label = "Info"
	list.Height = 10
	list.Y = 14
	list.Width = 25

	listItems := func() (out []string) {
		inf := GetInfoObj()
		out = append(out, fmt.Sprintf(" %d Jobs/Second", inf.JobRate))
		out = append(out, fmt.Sprintf(" %d  Workers", workForce.NumWorkers))
		out = append(out, fmt.Sprintf(" %d  Jobs Processed", TotalDone))
		out = append(out, fmt.Sprintf(" %s  QueueBinary", Config.Fetch_Binkey))
		out = append(out, fmt.Sprintf(" %s", inf.Host))
		out = append(out, fmt.Sprintf(" %v", inf.IpAddresses))
		return
	}

	p := ui.NewPar("0 Jobs per second")
	p.Height = 3
	p.Width = 50
	p.TextFgColor = ui.ColorWhite
	p.Border.Label = "Text Box"
	p.Border.FgColor = ui.ColorCyan

	draw := func(t int) {
//.........这里部分代码省略.........
开发者ID:rohanraja,项目名称:jobworker,代码行数:101,代码来源:termdash.go


示例16: main

func main() {
	err := ui.Init()
	if err != nil {
		panic(err)
	}
	defer ui.Close()

	sinps := (func() []float64 {
		n := 400
		ps := make([]float64, n)
		for i := range ps {
			ps[i] = 1 + math.Sin(float64(i)/5)
		}
		return ps
	})()
	sinpsint := (func() []int {
		ps := make([]int, len(sinps))
		for i, v := range sinps {
			ps[i] = int(100*v + 10)
		}
		return ps
	})()

	// ui.UseTheme("helloworld")

	spark := ui.Sparkline{}
	spark.Height = 8
	spdata := sinpsint
	spark.Data = spdata[:100]
	spark.LineColor = ui.ColorCyan
	spark.TitleColor = ui.ColorWhite

	sp := ui.NewSparklines(spark)
	sp.Height = 11
	sp.Border.Label = "Sparkline"

	lc := ui.NewLineChart()
	lc.Border.Label = "braille-mode Line Chart"
	lc.Data = sinps
	lc.Height = 11
	lc.AxesColor = ui.ColorWhite
	lc.LineColor = ui.ColorYellow | ui.AttrBold

	gs := make([]*ui.Gauge, 3)
	for i := range gs {
		gs[i] = ui.NewGauge()
		gs[i].Height = 2
		gs[i].HasBorder = false
		gs[i].Percent = i * 10
		gs[i].PaddingBottom = 1
		gs[i].BarColor = ui.ColorRed
	}

	ls := ui.NewList()
	ls.HasBorder = false
	ls.Items = []string{
		"[1] Downloading File 1",
		"", // == \newline
		"[2] Downloading File 2",
		"",
		"[3] Uploading File 3",
	}
	ls.Height = 5

	par := ui.NewPar("<> This row has 3 columns\n<- Widgets can be stacked up like left side\n<- Stacked widgets are treated as a single widget")
	par.Height = 5
	par.Border.Label = "Demonstration"

	// build layout
	ui.Body.AddRows(
		ui.NewRow(
			ui.NewCol(6, 0, sp),
			ui.NewCol(6, 0, lc)),
		ui.NewRow(
			ui.NewCol(3, 0, ls),
			ui.NewCol(3, 0, gs[0], gs[1], gs[2]),
			ui.NewCol(6, 0, par)))

	// calculate layout
	ui.Body.Align()

	done := make(chan bool)
	redraw := make(chan bool)

	/*
		update := func() {
			for i := 0; i < 103; i++ {
				for _, g := range gs {
					g.Percent = (g.Percent + 3) % 100
				}

				sp.Lines[0].Data = spdata[:100+i]
				lc.Data = sinps[2*i:]

				time.Sleep(time.Second / 2)
				redraw <- true
			}
			done <- true
		}
	*/
//.........这里部分代码省略.........
开发者ID:arscan,项目名称:gosf,代码行数:101,代码来源:main.go


示例17: main

func main() {
	err := tui.Init()
	if err != nil {
		panic(err)
	}
	defer tui.Close()

	///////////
	//
	//  Create UI components
	//
	///////////

	// Header
	pr_th := 3
	pr_title := tui.NewPar("Text Console User Interfaces")
	pr_title.Width = tui.TermWidth()
	pr_title.Height = pr_th
	pr_title.BorderFg = tui.ColorBlue

	// Footer
	g_h := 5
	g := tui.NewGauge()
	g.Percent = 1
	g.Width = tui.TermWidth()
	g.Height = g_h
	g.Y = tui.TermHeight() - g_h
	g.BorderLabel = "Progress"
	g.Label = "{{percent}} - Start!"
	g.LabelAlign = tui.AlignRight
	g.BarColor = tui.ColorGreen
	g.BorderFg = tui.ColorBlue
	g.BorderLabelFg = tui.ColorWhite

	// Slide 1
	txtlst1 := "Introduction\n\no Myself\n\no Interests in Go"
	se1_1 := tui.NewPar(txtlst1)
	se1_1.Width = tui.TermWidth()
	se1_1.Height = (tui.TermHeight() / 2) - (pr_th + g_h)
	se1_1.Y = pr_th
	se1_2 := tui.NewPar("")
	se1_2.Width = tui.TermWidth()
	se1_2.Height = (tui.TermHeight() / 2) - (pr_th + g_h)
	se1_2.Y = pr_th + se1_1.Height

	// Slide 2
	txtlst2 := "The Termui Library\n\no Console library UI\n\n"
	txtlst2 += "o A widget library for dashboard building in the terminal\n\n"
	txtlst2 += "o Cross Platform\n\n  o Runs on Linux, OSX, and Windows"
	se2_1 := tui.NewPar(txtlst2)
	se2_1.Width = tui.TermWidth()
	se2_1.Height = (tui.TermHeight() / 2) - (pr_th + g_h)
	se2_1.Y = pr_th

	// Slide 3
	txtlst3 := "More Info\n\n"
	txtlst3 += "o Built on top of termbox library\n\n"
	txtlst3 += "o Inherits handlers, events, and cross platform compatibility"
	se3_1 := tui.NewPar(txtlst3)
	se3_1.Width = tui.TermWidth()
	se3_1.Height = (tui.TermHeight() / 2) - (pr_th + g_h)
	se3_1.Y = pr_th

	// Slide 4
	txtlst4 := "Features\n\n"
	txtlst4 += "o Multiple widgets available\n\n"
	txtlst4 += "o Automatic grid layout\n\n"
	txtlst4 += "o 多言語可能 (multi-lang possible)"
	se4_1 := tui.NewPar(txtlst4)
	se4_1.Width = tui.TermWidth()
	se4_1.Height = (tui.TermHeight() / 2) - (pr_th + g_h)
	se4_1.Y = pr_th

	// Slide 5
	txtlst5 := "Widget Features\n\n"
	txtlst5 += "o Can be surrounded by borders\n\n"
	txtlst5 += "o Can have labels associated with it\n\n"
	txtlst5 += "o Borders can also have labels\n\n"
	txtlst5 += "o Color"
	se5_1 := tui.NewPar(txtlst5)
	se5_1.Width = tui.TermWidth()
	se5_1.Height = (tui.TermHeight() / 2) - (pr_th + g_h)
	se5_1.Y = pr_th

	// Slide 6
	txtlst6 := "Widgets - Par\n\no Par - aka Textbox\n\n"
	txtlst6 += "o Basic textbox widget\n\n"
	txtlst6 += "   p := termui.NewPar(\"World\")\n"
	txtlst6 += "   p.BorderLabel(\"Hello\")"
	se6_1 := tui.NewPar(txtlst6)
	se6_1.Width = tui.TermWidth()
	se6_1.Height = (tui.TermHeight() / 2) - (pr_th + g_h)
	se6_1.Y = pr_th
	se6_2 := tui.NewPar("World")
	se6_2.BorderLabel = "Hello"
	se6_2.BorderFg = tui.ColorYellow
	se6_2.BorderLabelFg = tui.ColorWhite
	se6_2.Width = tui.TermWidth()
	se6_2.Height = (tui.TermHeight() / 2) - (pr_th + g_h)
	se6_2.Y = pr_th + se6_1.Height
//.........这里部分代码省略.........
开发者ID:hoanga,项目名称:gohavefun,代码行数:101,代码来源:prez.go


示例18: main

func main() {
	// Init
	err := ui.Init()
	if err != nil {
		panic(err)
	}
	defer ui.Close()

	// Theme Setting
	ui.UseTheme("helloworld")

	// Setup the CPU Gauge
	cpuGauge := ui.NewGauge()
	cpuGauge.Height = 2
	cpuGauge.BarColor = ui.ColorRed
	cpuGauge.HasBorder = false
	cpuGauge.PaddingBottom = 1
	go UpdateGenericGauge(cpuGauge, GetCPUPercentage)

	// Setup the RAM Gauge
	ramGauge := ui.NewGauge()
	ramGauge.Height = 2
	ramGauge.BarColor = ui.ColorGreen
	ramGauge.HasBorder = false
	ramGauge.PaddingBottom = 1
	go UpdateGenericGauge(ramGauge, GetRAMPercentage)

	// Setup the Label list
	ls := ui.NewList()
	ls.HasBorder = false
	ls.Items = []string{
		"CPU",
		"",
		"RAM",
	}
	ls.Height = 5

	// Setup the CPU Line Chart
	cpuLineChart := ui.NewLineChart()
	cpuLineChart.Width = 50
	cpuLineChart.Height = 11
	cpuLineChart.Border.Label = "CPU Usage"
	cpuLineChart.AxesColor = ui.ColorWhite
	cpuLineChart.LineColor = ui.ColorGreen | ui.AttrBold
	go UpdateGenericChart(cpuLineChart, GetCPUPercentage)

	// Setup the RAM Line Chart
	ramLineChart := ui.NewLineChart()
	ramLineChart.Width = 50
	ramLineChart.Height = 11
	ramLineChart.Border.Label = "RAM Usage"
	ramLineChart.AxesColor = ui.ColorWhite
	ramLineChart.LineColor = ui.ColorGreen | ui.AttrBold
	go UpdateGenericChart(ramLineChart, GetRAMPercentage)

	// Setup the layout
	ui.Body.AddRows(
		ui.NewRow(
			ui.NewCol(3, 0, cpuGauge, ramGauge),
			ui.NewCol(3, 0, ls),
		),
		ui.NewRow(
			ui.NewCol(6, 0, cpuLineChart),
			ui.NewCol(6, 0, ramLineChart),
		),
	)

	// Align
	ui.Body.Align()

	// Create the event polling system
	evt := make(chan tm.Event)
	go func() {
		for {
			evt <- tm.PollEvent()
		}
	}()

	for {
		select {
		case e := <-evt:
			if e.Type == tm.EventKey && e.Ch == 'q' {
				return
			}
			if e.Type == tm.EventResize {
				ui.Body.Width = ui.TermWidth()
				ui.Body.Align()
			}
		default:
			ui.Render(ui.Body)
			time.Sleep(time.Second / 2)
		}
	}
}
开发者ID:yotixify,项目名称:termui-resources,代码行数:94,代码来源:main.go


示例19: main

func main() {
	err := ui.Init()
	if err != nil {
		panic(err)
	}
	defer ui.Close()

	ui.UseTheme("helloworld")

	p := ui.NewPar(":PRESS q TO QUIT DEMO")
	p.Height = 3
	p.Width = 50
	p.Border.Label = "Text Box"

	strs := []string{"[0] gizak/termui", "[1] editbox.go", "[2] iterrupt.go", "[3] keyboard.go", "[4] output.go", "[5] random_out.go", "[6] dashboard.go", "[7] nsf/termbox-go"}
	list := ui.NewList()
	list.Items = strs
	list.Border.Label = "List"
	list.Height = 7
	list.Width = 25
	list.Y = 4

	g := ui.NewGauge()
	g.Percent = 50
	g.Width = 50
	g.Height = 3
	g.Y = 11
	g.Border.Label = "Gauge"

	spark := ui.NewSparkline()
	spark.Title = "srv 0:"
	spdata := []int{4, 2, 1, 6, 3, 9, 1, 4, 2, 15, 14, 9, 8, 6, 10, 13, 15, 12, 10, 5, 3, 6, 1, 7, 10, 10, 14, 13, 6}
	spark.Data = spdata

	spark1 := ui.NewSparkline()
	spark1.Title = "srv 1:"
	spark1.Data = spdata

	sp := ui.NewSparklines(spark, spark1)
	sp.Width = 25
	sp.Height = 7
	sp.Border.Label = "Sparkline"
	sp.Y = 4
	sp.X = 25

	lc := ui.NewLineChart()
	sinps := (func() []float64 {
		n := 100
		ps := make([]float64, n)
		for i := range ps {
			ps[i] = 1 + math.Sin(float64(i)/4)
		}
		return ps
	})()

	lc.Border.Label = "Line Chart"
	lc.Data = sinps
	lc.Width = 50
	lc.Height = 11
	lc.X = 0
	lc.Y = 14
	lc.Mode = "dot"

	bc := ui.NewBarChart()
	bcdata := []int{3, 2, 5, 3, 9, 5, 3, 2, 5, 8, 3, 2, 4, 5, 3, 2, 5, 7, 5, 3, 2, 6, 7, 4, 6, 3, 6, 7, 8, 3, 6, 4, 5, 3, 2, 4, 6, 4, 8, 5, 9, 4, 3, 6, 5, 3, 6}
	bclabels := []string{"S0", "S1", "S2", "S3", "S4", "S5"}
	bc.Border.Label = "Bar Chart"
	bc.Width = 26
	bc.Height = 10
	bc.X = 51
	bc.Y = 0
	bc.DataLabels = bclabels

	lc1 := ui.NewLineChart()
	lc1.Border.Label = "Line Chart"
	rndwalk := (func() []float64 {
		n := 150
		d := make([]float64, n)
		for i := 1; i < n; i++ {
			if i < 20 {
				d[i] = d[i-1] + 0.01
			}
			if i > 20 {
				d[i] = d[i-1] - 0.05
			}
		}
		return d
	})()
	lc1.Data = rndwalk
	lc1.Width = 26
	lc1.Height = 11
	lc1.X = 51
	lc1.Y = 14

	p1 := ui.NewPar("Hey!\nI am a borderless block!")
	p1.HasBorder = false
	p1.Width = 26
	p1.Height = 2
	p1.X = 52
	p1.Y = 11
//.........这里部分代码省略.........
开发者ID:himanshugpt,项目名称:termui,代码行数:101,代码来源:theme.go


示例20: main

func main() {
	err := ui.Init()
	if err != nil {
		panic(err)
	}
	defer ui.Close()

	p := ui.NewPar(":PRESS q TO QUIT DEMO")
	p.Height = 3
	p.Width = 50
	p.TextFgColor = ui.ColorWhite
	p.Border.Label = "Text Box"
	p.Border.FgColor = ui.ColorCyan

	strs := []string{"[0] gizak/termui", "[1] editbox.go", "[2] iterrupt.go", "[3] keyboard.go", "[4] output.go", "[5] random_out.go", "[6] dashboard.go", "[7] nsf/termbox-go"}
	list := ui.NewList()
	list.Items = strs
	list.ItemFgColor = ui.ColorYellow
	list.Border.Label = "List"
	list.Height = 7
	list.Width = 25
	list.Y = 4

	g := ui.NewGauge()
	g.Percent = 50
	g.Width = 50
	g.Height = 3
	g.Y = 11
	g.Border.Label = "Gauge"
	g.BarColor = ui.ColorRed
	g.Border.FgColor = ui.ColorWhite
	g.Border.LabelFgColor = ui.ColorCyan

	spark := ui.Sparkline{}
	spark.Height = 1
	spark.Title = "srv 0:"
	spdata := []int{4, 2, 1, 6, 3, 9, 1, 4, 2, 15, 14, 9, 8, 6, 10, 13, 15, 12, 10, 5, 3, 6, 1, 7, 10, 10, 14, 13, 6}
	spark.Data = spdata
	spark.LineColor = ui.ColorCyan
	spark.TitleColor = ui.ColorWhite

	spark1 := ui.Sparkline{}
	spark1.Height = 1
	spark1.Title = "srv 1:"
	spark1.Data = spdata
	spark1.TitleColor = ui.ColorWhite
	spark1.LineColor = ui.ColorRed

	sp := ui.NewSparklines(spark, spark1)
	sp.Width = 25
	sp.Height = 7
	sp.Border.Label = "Sparkline"
	sp.Y = 4
	sp.X = 25

	sinps := (func() []float64 {
		n := 220
		ps := make([]float64, n)
		for i := range ps {
			ps[i] = 1 + math.Sin(float64(i)/5)
		}
		return ps
	})()

	lc := ui.NewLineChart()
	lc.Border.Label = "dot-mode Line Chart"
	lc.Data = sinps
	lc.Width = 50
	lc.Height = 11
	lc.X = 0
	lc.Y = 14
	lc.AxesColor = ui.ColorWhite
	lc.LineColor = ui.ColorRed | ui.AttrBold
	lc.Mode = "dot"

	bc := ui.NewBarChart()
	bcdata := []int{3, 2, 5, 3, 9, 5, 3, 2, 5, 8, 3, 2, 4, 5, 3, 2, 5, 7, 5, 3, 2, 6, 7, 4, 6, 3, 6, 7, 8, 3, 6, 4, 5, 3, 2, 4, 6, 4, 8, 5, 9, 4, 3, 6, 5, 3, 6}
	bclabels := []string{"S0", "S1", "S2", "S3", "S4", "S5"}
	bc.Border.Label = "Bar Chart"
	bc.Width = 26
	bc.Height = 10
	bc.X = 51
	bc.Y = 0
	bc.DataLabels = bclabels
	bc.BarColor = ui.ColorGreen
	bc.NumColor = ui.ColorBlack

	lc1 := ui.NewLineChart()
	lc1.Border.Label = "braille-mode Line Chart"
	lc1.Data = sinps
	lc1.Width = 26
	lc1.Height = 11
	lc1.X = 51
	lc1.Y = 14
	lc1.AxesColor = ui.ColorWhite
	lc1.LineColor = ui.ColorYellow | ui.AttrBold

	p1 := ui.NewPar("Hey!\nI am a borderless block!")
	p1.HasBorder = false
	p1.Width = 26
//.........这里部分代码省略.........
开发者ID:davidwadden,项目名称:lattice-release,代码行数:101,代码来源:dashboard.go



注:本文中的github.com/gizak/termui.NewGauge函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Golang termui.NewLineChart函数代码示例发布时间:2022-05-23
下一篇:
Golang termui.NewCol函数代码示例发布时间:2022-05-23
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap