Foxtable(狐表)用户栏目专家坐堂 → [求助]求助排列规律的代码


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

主题:[求助]求助排列规律的代码

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


加好友 发短信
等级:三尾狐 帖子:619 积分:3656 威望:0 精华:1 注册:2012/6/13 22:00:00
[求助]求助排列规律的代码  发帖心情 Post By:2013/5/25 23:25:00 [只看该作者]

实在找不到数据出现的规律,特向各位求教 

假设我规定了3列,这个排序怎么排呢?

假设要按照窗口的变化来排列,动态规定有多少列,又怎么做呢?

谢谢各位老师 

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:状态.table


图片点击可在新窗口打开查看此主题相关图片如下:222.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2013-5-26 23:08:31编辑过]

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


加好友 发短信
等级:小狐 帖子:321 积分:2468 威望:0 精华:2 注册:2013/1/16 19:33:00
  发帖心情 Post By:2013/5/26 0:08:00 [只看该作者]

Dim w,h,j,w0,w1,h0,h1 As Integer
w = 80 '控件宽
h = 50 '控件高
w0=10 '左右外边距
w1=5 '左右内边距
h0=10 '上外边距
h1=7 '上下内边距
j= e.Form.Width-w0+w1
j=j\(w+w1)
Dim drs As List(Of DataRow)
drs = DataTables("表a").Select("[状态] = '在线'")
For i As Integer = 1 To drs.Count
    If e.Form.ExistControl("online_Panel" & i) = True
        e.Form.RemoveControl("online_Panel" & i)
    End If
    Dim pl As WinForm.Panel
    pl = e.Form.CreateControl("online_Panel" & i, ControlTypeEnum.Panel)
    pl.Width = w
    pl.Height = h
    pl.Left = w0+((i-1) Mod j)*(w+w1)
    pl.Top =  h0+((i-1)\j)*(h+h1)

    e.Form.Controls("Panel1").AddControl(pl)
    If e.Form.ExistControl("online_Panel" & i & "_" & drs(i-1)("用户")) = True
        e.Form.RemoveControl("online_Panel" & i & "_" & drs(i-1)("用户"))
    End If
    Dim pt As WinForm.Painter
    pt = e.Form.CreateControl("online_Panel_" & i & "_" & drs(i-1)("用户"), ControlTypeEnum.Painter)
    pt.Width = w
    pt.Height = h
    pt.Left= 0
    pt.Top = 0
    pt.BorderStyle = BorderStyle.Fixed3D
    pl.BackColor = color.pink
    e.Form.Controls("online_Panel" & i).AddControl(pt)
    Dim g As Graphics = pt.Graphics
    Dim fnt As New Font("黑体",10,FontStyle.Bold)  
    
    Dim s1 As String = drs(i-1)("用户")
    g.DrawString(s1,fnt,Brushes.black,10,10) '定义启始为止
    g.DrawImage(getImage(drs(i-1)("图像")),10,30)
    
    pt.Repaint()
Next

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


加好友 发短信
等级:三尾狐 帖子:619 积分:3656 威望:0 精华:1 注册:2012/6/13 22:00:00
  发帖心情 Post By:2013/5/26 0:28:00 [只看该作者]

你是我学习的偶像

 

谢谢你


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


加好友 发短信
等级:三尾狐 帖子:619 积分:3656 威望:0 精华:1 注册:2012/6/13 22:00:00
  发帖心情 Post By:2013/5/26 0:29:00 [只看该作者]

我折腾一个晚上了。

做了多次的模型都没有成功

你的解决方法让我佩服


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


加好友 发短信
等级:八尾狐 帖子:1812 积分:12999 威望:0 精华:14 注册:2008/10/11 18:07:00
  发帖心情 Post By:2013/5/26 10:22:00 [只看该作者]

直接在表格上绘制头像就行

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


加好友 发短信
等级:三尾狐 帖子:619 积分:3656 威望:0 精华:1 注册:2012/6/13 22:00:00
  发帖心情 Post By:2013/5/26 11:15:00 [只看该作者]

谢谢大家的帮助,我已经搞定了,甚至可以实现更多的功能了

GDI果然是一个强大的工具

给大家秀个图

 


图片点击可在新窗口打开查看此主题相关图片如下:oiu.gif
图片点击可在新窗口打开查看

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


加好友 发短信
等级:九尾狐 帖子:2609 积分:16926 威望:0 精华:11 注册:2011/9/20 16:13:00
  发帖心情 Post By:2013/5/26 12:04:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:dfdfd.gif
图片点击可在新窗口打开查看

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


加好友 发短信
等级:小狐 帖子:316 积分:2628 威望:0 精华:0 注册:2013/3/4 20:21:00
  发帖心情 Post By:2013/5/26 12:09:00 [只看该作者]

牛  空了也要学习这个方法

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


加好友 发短信
等级:三尾狐 帖子:619 积分:3656 威望:0 精华:1 注册:2012/6/13 22:00:00
  发帖心情 Post By:2013/5/26 12:22:00 [只看该作者]

你的这个更牛哦,

鼠标移动到那里之后,那个panel会动是怎么搞的哦


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


加好友 发短信
等级:小狐 帖子:321 积分:2468 威望:0 精华:2 注册:2013/1/16 19:33:00
  发帖心情 Post By:2013/5/26 13:26:00 [只看该作者]

MouseEnter:
If left(e.Sender.name,13) = "online_Panel_"
    e.Sender.ToolTip = "点击可查看会员信息!"
    e.Sender.BorderStyle = BorderStyle.Fixed3D
End If

MouseLeave:

If left(e.Sender.name,13) = "online_Panel_"

    e.Sender.BorderStyle = BorderStyle.FixedSingle

End If


 回到顶部
总数 22 1 2 3 下一页