以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]过来学习学习绘制,某一列我想让他变成好看的框框里面是文字,该怎么写代码?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=132598)

--  作者:zto001
--  发布时间:2019/3/25 17:30:00
--  [求助]过来学习学习绘制,某一列我想让他变成好看的框框里面是文字,该怎么写代码?

[求助]

①、某一列我想让他变成好看的框框里面是文字,该怎么写代码?

上传不了文件,网上找了张图。类似于下面这样的按钮文字。外面是有颜色的框框,里面是有颜色的文字


图片点击可在新窗口打开查看

②、我想某一列类似于消息提醒一样有红色圆点内为数字,该怎么写代码?

图片点击可在新窗口打开查看

--  作者:有点甜
--  发布时间:2019/3/25 18:26:00
--  
 下载信息  [文件大小:38.0 KB  下载次数:52]
图片点击可在新窗口打开查看点击浏览该文件:右上角图标.zip

--  作者:zto001
--  发布时间:2019/3/26 10:00:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:图片.png
图片点击可在新窗口打开查看
就是做成这样的。表格里面做成这样
--  作者:有点甜
--  发布时间:2019/3/26 12:42:00
--  

参考

 

http://www.foxtable.com/webhelp/scr/1493.htm

 

http://www.foxtable.com/webhelp/scr/1482.htm

 


--  作者:zto001
--  发布时间:2019/3/27 9:42:00
--  
绘制方框标签
If e.Col.Name = "第一列"  Then
    e.StartDraw()

    Dim msg As String=e.Text 
    Dim tl As Integer = e.Text.Length
    If tl>0 Then
        Dim w As Integer = e.Width -4
        Dim h As Integer = e.Height-4
        Dim x As Integer = e.x + (e.Width - w)/2
        Dim n As Pen
        Dim fnt As New Font("楷体",9,FontStyle.Bold)
        Dim br As Brush
                    n = New Pen(Color.Green,2)
            br = New SolidBrush(color.Green)
     
        e.Graphics.DrawRectangle(n,x,e.y + 2,w,h)
        e.Graphics.DrawString(msg,fnt,br,x + 1,e.y + 4)
        e.Text = ""
        e.EndDraw()
    End If
End If

--  作者:zto001
--  发布时间:2019/3/27 9:44:00
--  
画实心圆怎么画?
还有上面有个问题就是如果字长度超出单元格长度字会显示在外面,如果固定单元格长度,直接取部分显示的字,部分单元和会拉长又不好看。而且没有居中显示

--  作者:有点甜
--  发布时间:2019/3/27 11:12:00
--  

要学会自己写代码

 

http://www.foxtable.com/webhelp/scr/1482.htm

 

If e.Col.Name = "第一列"  Then
    e.StartDraw()
   
   
    Dim msg As String=e.Text
    Dim tl As Integer = e.Text.Length
    If tl>0 Then
        Dim w As Integer = e.Width -4
        Dim h As Integer = e.Height-4
        Dim x As Integer = e.x + (e.Width - w)/2
        Dim n As Pen
        Dim fnt As New Font("楷体",9,FontStyle.Bold)
        Dim br As Brush
        n = New Pen(Color.Green,2)
        br = New SolidBrush(color.Green)
        Dim sf As new StringFormat
        sf.Alignment = StringAlignment.Center
        sf.LineAlignment = StringAlignment.Center
        e.Graphics.DrawRectangle(n,x,e.y + 2,w,h)
        e.Graphics.DrawString(msg,fnt,Brushes.black,  new Rectangle(e.x, e.y, e.width, e.height), sf)

        e.Text = ""
        e.EndDraw()
    End If
End If