BBjDrawPanel::setFont

Description

In BBj 22.10 and higher, this method sets the font to be used by BBjDrawPanel::drawText.

Syntax

Return Value Method
void setFont(BBjFont font!)

Parameters

Variable Description
font! Font to be used by BBjDrawPanel::drawText.

Return Value

None.

Remarks

Prior to BBj 22.10, use BBjWindow::setFont.

Example

Copy
BBjDrawPanel Example
rem ' BBjDrawPanel
sysgui = unt
open (sysgui)"X0"
sysgui! = bbjapi().getSysGui()
title$ = "BBjDrawPanel"
window! = sysgui!.addWindow(25,25,1200,750,title$,$00090003$)
window!.setCallback(window!.ON_CLOSE,"eoj")
window!.setTrack(0)
window!.setFont(sysgui!.makeFont("Arial",8,0))
drawpanel! = window!.getDrawPanel()
rem ' BBjDrawPanel setFont & getFont, BBj 22.10+:
drawpanel!.setFont(sysgui!.makeFont("Arial",8,0),err=*next)
print drawpanel!.getFont(err=*next)
drawpanel!.setPenColor(BBjColor.BLUE)
drawpanel!.setFillColor(BBjColor.GREEN)
drawpanel!.setTextColor(BBjColor.BLUE)
drawpanel!.setRound(5,5)
drawpanel!.drawText(10,25,"Shape")
drawpanel!.drawText(10,55,"drawPoint")
drawpanel!.drawText(10,100,"drawRect")
drawpanel!.drawText(10,175,"drawArc")
drawpanel!.drawText(10,225,"drawArc")
drawpanel!.drawText(10,325,"drawEllipse")
drawpanel!.drawText(10,400,"drawArrow")
drawpanel!.drawText(10,450,"drawArrow")
drawpanel!.drawText(10,500,"drawLine")
drawpanel!.drawText(10,575,"drawPolygon")
drawpanel!.drawText(10,675,"drawPolyline")
for i = 0 to 10
  x = i * 100 + 25
  drawpanel!.setFillType(i)
  drawpanel!.setPattern(i)
  drawpanel!.setPenWidth((i+1)*0.25)
  drawpanel!.drawPoint(x+100,50)
  drawpanel!.drawText(x+85,25,"setFillType("+str(i)+")")
  drawpanel!.drawRect(x+75,75,75,50)
  r1 = i * Math.PI / 2
  r2 = r1 + Math.PI / 2
  drawpanel!.drawArc(x+100,175,25,1,r1,r2,1)
  drawpanel!.drawArc(x+100,225,25,1,r1,r2,0)
  drawpanel!.drawEllipse(x+75,275,75,50)
  adj = (i-5) * 5
  drawpanel!.moveTo(x+75,400)
  drawpanel!.drawArrow(x+150,400+adj,0,1)
  drawpanel!.moveTo(x+75,450)
  drawpanel!.drawArrow(x+150,450+adj,1,0)
  drawpanel!.drawLine(x+75,500,x+150,525)
  points = i + 3
  list! = bbjapi().makeVector()
  for point = 0 to points-1
    angle = point * 2 * Math.PI / points
    px = int(40 * cos(angle) + 110 + x)
    py = int(40 * sin(angle) + 600)
    list!.add(px)
    list!.add(py)
  next point
  drawpanel!.drawPolygon(list!)
  list! = bbjapi().makeVector()
  for point = 0 to points-1
    angle = point * 2 * Math.PI / points
    px = int(40 * cos(angle) + 110 + x)
    py = int(40 * sin(angle) + 700)
    list!.add(px)
    list!.add(py)
  next point
  drawpanel!.drawPolyline(list!)
next i
process_events
eoj:
release

ClosedVersion History

  • BBj 22.10: BBjDrawPanel::setFont introduced

See Also

See the BBj Object Diagram for an illustration of the relationship between BBj Objects.

BBjAPI

BBjControl::setFont

BBjSysGui::makeFont

BBjDrawPanel

BBjDrawPanel::getFont

BBjFont