Foxtable(狐表)用户栏目专家坐堂 → [求助]按照顺序增加控件textbox


  共有2460人关注过本帖树形打印复制链接

主题:[求助]按照顺序增加控件textbox

帅哥哟,离线,有人找我吗?
huhu
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1165 积分:8129 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/3/16 11:28:00 [显示全部帖子]

afterload代码:就是把每个控件都显示出来
DataTables("盖楼").LoadFilter = "BUG_ID = '" & Vars("BUGID") & "'"
DataTables("盖楼").Load
For Each r As DataRow In DataTables("盖楼").DataRows
    If r.Isnull("BUG_ID") = False And r.Isnull("备注") = False And r.Isnull("回复者") = False And r.Isnull("回复时间") = False Then
        static i As Integer = 0
        static y As Integer = 20
        Dim txt As WinForm.TextBox
        Dim Label1,label2 As WinForm.Label
        txt = e.Form.CreateControl("TextBox" & r("_Identify"), ControlTypeEnum.TextBox)
        label1 = e.Form.CreateControl("label1" & r("_Identify"), ControlTypeEnum.label)
        label2 = e.Form.CreateControl("label2" & r("_Identify"), ControlTypeEnum.label)
        txt.Left = 150
        txt.Top = y
        txt.height = 50
        txt.MultiLine = True
        txt.ScrollBars = Windows.Forms.ScrollBars.Vertical
        txt.SetBounds(150,y,500,50)
        e.Form.AddControl(txt)
        label1.Left = 50
        label1.Top = y
        e.Form.AddControl(label1)
        Dim str As String
        Dim id  As Integer
        id = user.name.IndexOf("@")
        str = user.name.SubString(0,id)
        label1.Text = i & "楼" & str
        label2.SetBounds(50,y + 20,100,50)
        label2.Left = 50
        label2.Top = y + 20
        e.Form.AddControl(label2)
        label2.Text = Date.now
        txt.text = r("备注")
        label1.Text = r("回复者")
        label2.Text = r("回复时间")
        i+= 1
        y += txt.height + 10
    End If
Next
盖楼click代码:应该有问题。假如已经有了3个textbox了。这时,执行它,不就又覆盖了第一个了吗。如何判断已有的textbox的top距离。
DataTables("盖楼").LoadFilter = "BUG_ID = '" & Vars("BUGID") & "'"
DataTables("盖楼").Load
Dim r As Row = Tables("盖楼").AddNew()
r("BUG_ID") = Vars("BUGID")
static i As Integer = 0
static y As Integer = 20
Dim txt As WinForm.TextBox
Dim Label1,label2 As WinForm.Label
txt = e.Form.CreateControl("TextBox" & r("_Identify"), ControlTypeEnum.TextBox)
label1 = e.Form.CreateControl("label1" & r("_Identify"), ControlTypeEnum.label)
label2 = e.Form.CreateControl("label2" & r("_Identify"), ControlTypeEnum.label)
txt.Left = 150
txt.Top = y
txt.height = 50
txt.MultiLine = True
txt.ScrollBars = Windows.Forms.ScrollBars.Vertical
txt.SetBounds(150,y,500,50)
e.Form.AddControl(txt)
label1.Left = 50
label1.Top = y
e.Form.AddControl(label1)
Dim str As String
Dim id  As Integer
id = user.name.IndexOf("@")
str = user.name.SubString(0,id)
label1.Text = i & "楼" & str
r("回复者") = label1.Text
label2.SetBounds(50,y + 20,100,50)
label2.Left = 50
label2.Top = y + 20
e.Form.AddControl(label2)
label2.Text = Date.now
r("回复时间") = label2.Text
i+= 1
y += txt.height + 10

 回到顶部
帅哥哟,离线,有人找我吗?
huhu
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1165 积分:8129 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/3/16 12:47:00 [显示全部帖子]

能详细点不?
既然定义了全局变量。那么初始值怎么给指定?

 回到顶部
帅哥哟,离线,有人找我吗?
huhu
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1165 积分:8129 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/3/16 15:04:00 [显示全部帖子]

能把代码给我写一下吗?

 回到顶部
帅哥哟,离线,有人找我吗?
huhu
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1165 积分:8129 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/3/16 15:54:00 [显示全部帖子]

afterload代码:
DataTables("盖楼").LoadFilter = "BUG_ID = '" & Vars("BUGID") & "'"
DataTables("盖楼").Load
For Each r As DataRow In DataTables("盖楼").DataRows
    If r.Isnull("BUG_ID") = False And r.Isnull("备注") = False And r.Isnull("回复者") = False And r.Isnull("回复时间") = False Then        
        Dim txt As WinForm.TextBox
        Dim Label1,label2 As WinForm.Label
        txt = e.Form.CreateControl("TextBox" & r("_Identify"), ControlTypeEnum.TextBox)
        label1 = e.Form.CreateControl("label1" & r("_Identify"), ControlTypeEnum.label)
        label2 = e.Form.CreateControl("label2" & r("_Identify"), ControlTypeEnum.label)
        txt.Left = 150
        txt.Top = Vars("yyy")
        txt.height = 50
        txt.MultiLine = True
        txt.ScrollBars = Windows.Forms.ScrollBars.Vertical
        txt.SetBounds(150,Vars("yyy"),500,50)
        e.Form.AddControl(txt)
        label1.Left = 50
        label1.Top = Vars("yyy")
        e.Form.AddControl(label1)
        Dim str As String
        Dim id  As Integer
        id = user.name.IndexOf("@")
        str = user.name.SubString(0,id)
        label1.Text = Vars("iii") & "楼" & str
        label2.SetBounds(50,Vars("yyy") + 20,100,50)
        label2.Left = 50
        label2.Top = Vars("yyy") + 20
        e.Form.AddControl(label2)
        label2.Text = Date.now
        txt.text = r("备注")
        label1.Text = r("回复者")
        label2.Text = r("回复时间")
        Vars("iii") += 1
        Vars("yyy") += txt.height + 10
    End If
Next
盖楼click代码:
DataTables("盖楼").LoadFilter = "BUG_ID = '" & Vars("BUGID") & "'"
DataTables("盖楼").Load
Dim r As Row = Tables("盖楼").AddNew()
r("BUG_ID") = Vars("BUGID")
Dim txt As WinForm.TextBox
Dim Label1,label2 As WinForm.Label
txt = e.Form.CreateControl("TextBox" & r("_Identify"), ControlTypeEnum.TextBox)
label1 = e.Form.CreateControl("label1" & r("_Identify"), ControlTypeEnum.label)
label2 = e.Form.CreateControl("label2" & r("_Identify"), ControlTypeEnum.label)
txt.Left = 150
txt.Top = Vars("yyy")
txt.height = 50
txt.MultiLine = True
txt.ScrollBars = Windows.Forms.ScrollBars.Vertical
txt.SetBounds(150,Vars("yyy"),500,50)
e.Form.AddControl(txt)
label1.Left = 50
label1.Top = Vars("yyy")
e.Form.AddControl(label1)
Dim str As String
Dim id  As Integer
id = user.name.IndexOf("@")
str = user.name.SubString(0,id)
label1.Text = Vars("iii") & "楼" & str
r("回复者") = label1.Text
label2.SetBounds(50,Vars("yyy") + 20,100,50)
label2.Left = 50
label2.Top = Vars("yyy") + 20
e.Form.AddControl(label2)
label2.Text = Date.now
r("回复时间") = label2.Text
Vars("iii") += 1
Vars("yyy") += txt.height + 10

效果好像不对啊。
[此贴子已经被作者于2016/3/16 16:45:03编辑过]

 回到顶部
总数 15 上一页 1 2