C#特殊类型窗体制作:实现类似QQ的程序界面

原理: n个 listView控件, n个button控件, 然后控制 listView和 button控件的 Dock 属性

如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace QQ
{
  public partial class Form1 : Form
  {
    public Form1()
    {
      InitializeComponent();
    }
    private void button1_Click(object sender, EventArgs e)
    {
      listView1.Dock = DockStyle.None;
      button1.Dock = DockStyle.Top;
      button2.Dock = DockStyle.Bottom;
      button3.SendToBack();
      button3.Dock = DockStyle.Bottom;
      listView1.BringToFront();
      listView1.Dock = DockStyle.Bottom;
      listView1.Clear();
      listView1.Items.Add("小猪", "小猪", 0);
      listView1.Items.Add("小狗", "小狗", 1);
      listView1.Items.Add("娇娇", "娇娇", 2);
    }
    private void Form1_Load(object sender, EventArgs e)
    {
      listView1.Clear();
      listView1.LargeImageList = imageList1;
      listView1.Items.Add("小猪", "小猪", 0);
      listView1.Items.Add("小狗", "小狗", 1);
      listView1.Items.Add("娇娇", "娇娇", 2);
    }
    private void button2_Click(object sender, EventArgs e)
    {
      listView1.Dock = DockStyle.None;
      button2.Dock = DockStyle.Top;
      button1.SendToBack();
      button1.Dock = DockStyle.Top;
      button3.Dock = DockStyle.Bottom;
      listView1.Dock = DockStyle.Bottom;
      listView1.Clear();
      listView1.Items.Add("北风", "北风", 3);
    }
    private void button3_Click(object sender, EventArgs e)
    {
      listView1.Dock = DockStyle.None;
      button3.SendToBack();
      button3.Dock = DockStyle.Top;
      button2.SendToBack();
      button2.Dock = DockStyle.Top;
      button1.SendToBack();
      button1.Dock = DockStyle.Top;
      listView1.Dock = DockStyle.Bottom;
      listView1.Clear();
      listView1.Items.Add("冰雨", "冰雨", 5);
    }
  }
}

文章来源: http://www.cnblogs.com/ziyiFly/archive/2008/09/11/1288820.html

时间: 2024-10-01 23:29:18

C#特殊类型窗体制作:实现类似QQ的程序界面的相关文章

C#特殊类型窗体制作:实现类似Windows XP的程序界面

思路: 2到3个 pictureBox 控件, 控制是否显示并确定显示的坐标. 截图: 上传较慢, 效果类似于 windows XP 左侧导航界面 如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespa

通信-Linux下的类似QQ聊天程序

问题描述 Linux下的类似QQ聊天程序 想在Linux下用socket套接字写个类似于windows下的QQ聊天程序,但是遇到不能循环发送和接受的问题,希望能向各位大侠请教,以下是代码: 这是server端代码: #include<stdio.h> #include<string.h> #include<stdlib.h> #include<errno.h> #include<sys/types.h> #include<sys/socke

特殊类型窗体制作:用C#实现启动欢迎界面

第一步: 主程序启动主窗体(这里表示为 form1) 如下: static class Program { /// <summary> /// 应用程序的主入口点. /// </summary> [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form

C#特殊类型窗体制作:制作字形窗体

原理:重写当前窗体 OnPaint 方法, 如下: protected override void OnPaint(PaintEventArgs e) { e.Graphics.DrawImage((Image)bit, new Point(0, 0)); } 一.窗体设计: #region Windows 窗体设计器生成的代码 /// <summary> /// 设计器支持所需的方法 - 不要 /// 使用代码编辑器修改此方法的内容. /// </summary> private

C#特殊类型窗体制作:制作可以飘动的窗体

原理: (这里演示纵坐标不变的窗体移动), 两个 timer, 一个控制从左至右, 到达预先设定的点时触发另一个 timer, 当然另一个 timer 控制从右至左的移动( 其实质是横坐标的变化) 如果你希望上下左右或斜线移动甚至乱七八糟(呵呵, 应该叫随机)只要加足够的 timer 并控制好横纵坐标的变换即可. using System; using System.Collections.Generic; using System.ComponentModel; using System.Da

【请教】如何制作类似QQ表情或词库一样的自动导入包??

问题描述 [请教]如何制作类似QQ表情或词库一样的自动导入包??比如,双击QQ表情.eip就自动导入到QQ安装目下的某个表情文件夹内??谁知道的烦请解答指点一下?谢谢~~

用C#代码实现类似QQ窗体的“上、左、右”停靠功能

阅读对象:入门级,老鸟漂过 大家都知道QQ有一个自动停靠功能,即"上.左.右",当你把窗体拖到屏幕边缘,然后移开鼠标它会自动缩放,然后只显示一小小点出来,我们仔细观察会发现其实它只露3像素左右的边缘,当你鼠标移上去它又会伸出来,介于普通入门级学者要求艾伟就在这里给需要的朋友们分享分享我是怎么实现的,代码很少,效果如下: 先在当前类里弄几个变量,方便逻辑判断: QQ_MODE(用于记录窗体当前的停靠状态,即0为不停靠,1为X轴,2为Y轴,3为顶部),QQ_T(窗体缩放时显示出来的边缘大小

WinForm实现类似QQ停靠,显示隐藏过程添加特效效果

原文:WinForm实现类似QQ停靠,显示隐藏过程添加特效效果 这可能是个老题长谈的问题了,只是在项目中会用到这个效果,所以今天做个记录.大家见了别喷我.在项目中的需求是这样的. 打开程序,在屏幕的右下角会显示一个窗体,一般情况下该窗体会隐藏停靠在右边,只露出很小部分,当鼠标移动到这个很小部分时,窗体全部显示,显示过程是从右边滑动到左边,当鼠标离开窗体时,窗体需要隐藏在右边,只露出很小部分,隐藏过程是从左边滑动到右边. 实现此类效果我碰到的连个难点是:1.如何判断鼠标离开了窗体?2.窗体显示隐藏

MFC 列表控件CListCtrl加载类似QQ界面的头像与文字

本文主要讲述使用VS2012 MFC的CListCtrl(列表)控件加载类似于QQ界面的图片与文字数据.主要通过CListCtrl::InsertColumn.InsertItem.SetItemText向列表插入数据,CImageList插入BMP图片或ICON图标. 一.创建项目及界面 1.创建项目     创建项目名为"QQList"的基于MFC对话框的应用程序.资源视图中对话框IDD_QQLIST_DIALOG删除"TODE"和按钮,并添加List Cont