C#仿QQ面板的简单实现

首先来看看最终效果:


下边我们来一步一步实现:

首先新建一个C# windows application,并在界面上添加一个Pannel控件,拉成合适的形状,如下图:


我们要做的,就是将Button加入到Pannel控件中,并根据鼠标点击移动Button和添加子Button.

第一步,定义一些必要的变量和属性:

private string[] _Module;
private string[,] _ChildModule;
private int _ModuleButtonHeight = 50;
private int _ChildButtonHeight = 30;
/// <summary>
/// 初始模块
/// </summary>
public string[] Module
{
get { return _Module; }
set { _Module = value; }
}
/// <summary>
/// 初始子模块
/// </summary>
public string[,] ChildModule
{
get { return _ChildModule; }
set { _ChildModule = value; }
}

时间: 2024-08-01 12:31:42

C#仿QQ面板的简单实现的相关文章

JS实现仿QQ面板的手风琴效果折叠菜单代码_javascript技巧

本文实例讲述了JS实现仿QQ面板的手风琴效果折叠菜单代码.分享给大家供大家参考.具体如下: 这是一款简单实用的垂直导航菜单,有人把这种风格称为"手风琴"菜单,类似仿QQ面板的折叠菜单,鼠标放在任意一个菜单上,它会展开所属的二级菜单,很不错的选择,以前就分享过此类菜单,这次经过了代码优化升级,更人性化了. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-f-qq-sfq-style-menu-codes/ 具体代码如下: <!

仿QQ面板举一反三之拉幕式窗口

设计昨天尝试了仿QQ面板的设计(具体请看:http://www.cnblogs.com/KenBlove/archive/2008/09/27/1300938.html),今天忽然想如果将面板横着放,不就成了一个拉幕式的窗口了么? 说做就做.立即动手: 首先,和QQ面板不同的就是QQ面板设计当点击Module button的时候,会显示下一级的button.但是这次我们做的不同,应该显示不同的内容,道理大同小异.我们将在panel中加入usercontrol,至于usercontrol里面要显示

js实现带缓冲效果的仿QQ面板折叠菜单代码_javascript技巧

本文实例讲述了js实现带缓冲效果的仿QQ面板折叠菜单代码.分享给大家供大家参考.具体如下: 带缓冲效果的仿QQ面板折叠菜单代码,使用方法:调用效果: Effect(1,2); 其中1为: 被改变对象的id 其中2为: 控制容器的id 可在使用: this.parentNode.id 取得(父标签的id) 注意给对象ID的时候一定不要重复. 运行效果如下图所示: 在线演示地址如下: http://demo.jb51.net/js/2015/js-buffer-style-qq-menu-codes

仿QQ面板的WinForm窗体

说明:前几天在一个朋友那里看到做得很漂亮的一个企业及时通讯软件,利用C#编写,完全没有利 用第三方控件就实现了类似于QQ面板的效果,非常漂亮. 回家之后凭着自己的记忆和查阅MSDN尝试实现了一下,初步实现了类似效果,现在奉献给大家. 在程序中用到了三种控件(不包括窗体类):ImageList.Button和ListView.Button控件显示好友分组,点击之后显示相应好友分组的信息: ImageList控件用于存放好友头像:ListView控件用于显示好友列表.在程序中不是用Location来

JS实现超简单的仿QQ折叠菜单效果_javascript技巧

本文实例讲述了JS实现超简单的仿QQ折叠菜单效果.分享给大家供大家参考.具体如下: 这是一款经过精简后的仿QQ折叠菜单代码,以前发过的,不过这个是经过几轮代码精简后的一个版本,而且在各浏览器下的表现也很不错,兼容性没出问题. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-simple-f-qq-zd-style-menu-codes/ 具体代码如下: <!DOCTYPE html> <html xmlns="http:/

纯js实现仿QQ邮箱弹出确认框

仿QQ邮箱的弹出层,弹出确认框,主要是用火狐的firebug把html和css扣了下来,没有做封装,就定义了一个拖动事件. 大家可以封装自己的弹出窗,嘿嘿! 代码非常简单,这里就不多废话了. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54

android-安卓仿QQ好友动态是的head是如何实现的

问题描述 安卓仿QQ好友动态是的head是如何实现的 或者新浪微博个人主页是如何实现的如图 求demo 解决方案 这个界面应该没啥难度吧,你把你觉得没法理解或者困难的地方说下 解决方案二: 标题那里背景色 设置为 透明 然后 图片和标题用 framelayout 就好了 解决方案三: true? //让actionbar悬浮于布局上 //让actionbar透明,色值你可以改一下 <item name=""android:background"">#33

Android自定义ListView实现仿QQ可拖拽列表功能_Android

我们大致的思路,其实是这样子的,也是我的设想,我们可以先去实现一个简单的ListView的数据,但是他的Adapter,我们可以用系统封装好的,然后传递进去一个实体类,最后自定义一个listview去操作,所以我们先把准备的工作做好,比如? list_item.xml <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.a

Android仿QQ列表滑动删除操作_Android

这篇山寨一个新版QQ的列表滑动删除,上篇有说到QQ的滑动删除,推测原理就是ListView本身每个item存在一个Button,只不过普通的状态下隐藏掉了,检测到向左的滑动事件的时候弹出隐藏的Button,不过再切换Button状态的时候会给Button一个出现和隐藏的动画.下面实现这个ListView.  首先有个难点就是通过ListView获取它某个item的View,对于ViewGroup,可以直接调用getChildAt()方法获取对应的子view,但是在ListView直接使用getC