找回密码
 入驻
搜索
查看: 434962|回复: 17

辛苦一星期编程的成果 =.=||

[复制链接]
发表于 2007-1-5 12:46:02 | 显示全部楼层 |阅读模式
为了发表你的文章,你跑了很长的路,花去了乘车费 19 思明论坛!

   下次努力哦!……
辛苦了一个星期,没编出来仕么象样的程序~~~烟倒烧了不少~~5天12包烟~~~一天两包还不够~~:L 吸烟只是为了打发想问题时的无聊~~:Q
图片(1).jpg
 楼主| 发表于 2007-1-5 12:46:33 | 显示全部楼层
呵呵,也不能让大家失望啊~~发点实用的给一起学习C#的朋友们~~

重绘LISTBOX

感觉重新绘制一遍比默认样式好看多了

在窗口中拖一个ListBox控件~~设置它的DrawMode属性为OwnerDrawVariable

然后要添加两个事件~~~DrawItem事件跟MeasureItem事件

下面贴出我的代码

  1.         private void listBox1_DrawItem(object sender, DrawItemEventArgs e)
  2.         {
  3.             e.DrawBackground();
  4.             Rectangle r = new Rectangle(0, 0, listBox1.Width, 100);
  5.             bool selected = ((e.State & DrawItemState.Selected) == DrawItemState.Selected);
  6.             LinearGradientBrush lgb = null;
  7.             if (!selected)
  8.                 lgb = new LinearGradientBrush(r, Color.Red, Color.Yellow, LinearGradientMode.Horizontal);
  9.             else
  10.                 lgb = new LinearGradientBrush(r, Color.Cyan, Color.White, LinearGradientMode.Horizontal);
  11.             e.Graphics.FillRectangle(lgb, e.Bounds);
  12.             e.Graphics.DrawRectangle(SystemPens.WindowText, e.Bounds);
  13.             Rectangle r2 = e.Bounds;
  14.             string displayText = (string)listBox1.Items[e.Index];
  15.             SizeF size = e.Graphics.MeasureString(displayText, this.Font);
  16.             r2.Y = (int)(r2.Height / 2) - (int)(size.Height / 2) + e.Bounds.Y;
  17.             r2.X = 2;
  18.             e.Graphics.DrawString(displayText, this.Font, Brushes.Black, r2);
  19.             e.DrawFocusRectangle();
  20.         }
  21.         private void listBox1_MeasureItem(object sender, MeasureItemEventArgs e)
  22.         {
  23.             string displayText = (string)listBox1.Items[e.Index];
  24.             SizeF size = e.Graphics.MeasureString(displayText, this.Font);
  25.             size.Height += 10;
  26.             e.ItemHeight = (int)size.Height;
  27.         }

复制代码


附件为效果图~~~没用到GDI+的高深知识就能改善控件的外观样式~~~效果不错吧````

[ 本帖最后由 欣云 于 2007-1-5 12:54 编辑 ]

我绘制的ListBox控件

我绘制的ListBox控件
回复

使用道具 举报

发表于 2007-1-5 12:47:48 | 显示全部楼层
做生意不得门路,亏了 10% 的本钱!

   下次努力哦!……
:L :L ................
回复

使用道具 举报

 楼主| 发表于 2007-1-5 12:56:09 | 显示全部楼层
有人捡到钱把你当成失主送给了你,收到 300 思明论坛,热心值减 2

   下次努力哦!……
顶下顶下~~~哈哈~~~~:lol 现在没烟了~~郁闷~~~抽烟的钱比吃饭的还要多~~~:Q
回复

使用道具 举报

发表于 2007-1-5 12:56:11 | 显示全部楼层
你中了彩票一等奖,获得奖金 3888 思明论坛!

   下次努力哦!……
顶你~```:lol
回复

使用道具 举报

 楼主| 发表于 2007-1-5 12:58:05 | 显示全部楼层
我再顶~顶到飞去`~~以后出去就没得顶了~~~~:lol
回复

使用道具 举报

发表于 2007-1-5 13:04:01 | 显示全部楼层
:L :L :( :(
回复

使用道具 举报

发表于 2007-1-5 13:04:39 | 显示全部楼层
财神爷今日光临思明论坛,大派财运,你的财产增加了 10%

   下次努力哦!……
你那么厉害
可以在外面入侵思明论坛灌水的啊:lol :lol
回复

使用道具 举报

 楼主| 发表于 2007-1-5 13:07:40 | 显示全部楼层
不好意思,小偷又光顾你家,带走了你 10% 的财产!(人民政府再次提醒大家有钱要存银行)

   下次努力哦!……
原帖由 情断柳江河 于 2007-1-5 13:04 发表
你那么厉害
可以在外面入侵思明论坛灌水的啊:lol :lol


既已离去`~~就不该心存留恋~~~~~~~~~~~~~~~:L
回复

使用道具 举报

发表于 2007-1-5 13:09:35 | 显示全部楼层
心仪你的人为你送上鲜花,热心值加 20

   下次努力哦!……
呵呵
:handshake :lol :lol
回复

使用道具 举报

发表于 2007-1-5 13:55:04 | 显示全部楼层
:lol :lol :lol :lol :lol :victory:
回复

使用道具 举报

发表于 2007-1-5 13:58:46 | 显示全部楼层
今日思明论坛电影院派发嘉宾卷,你将入场卷变卖后得到 149 思明论坛!

   下次努力哦!……
ding .,,,,,,,,,,,,,,,,,,,,师兄我来帮你顶!
回复

使用道具 举报

发表于 2007-1-5 15:02:51 | 显示全部楼层
我再顶:lol :lol :lol
回复

使用道具 举报

发表于 2007-1-12 16:20:58 | 显示全部楼层
无缘无故有名人请你吃饭,还赠送 205 思明论坛,热心值加 3

   下次努力哦!……
GDI 也可以在网页里面做验证码 还能玩出很多花样呢
回复

使用道具 举报

发表于 2007-1-13 14:50:18 | 显示全部楼层
你的跑车有了小小损坏,花去你 879 思明论坛的修理费!

   下次努力哦!……
哎~~做程序真耗国家的香烟啊~~:Q
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 入驻

本版积分规则

QQ|Archiver|手机版|小黑屋|思明论坛

GMT+8, 2024-11-16 19:25 , Processed in 0.082016 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表