登录
首页 » C# » C# winform 仿qq表情 弹出层示例源码下载

C# winform 仿qq表情 弹出层示例源码下载

于 2013-10-02 发布
0 166
下载积分: 1 下载次数: 0

代码说明:

C# winform 仿qq表情 弹出层示例源码下载

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • book-概率机器人.pdf
    book-概率机器人.pdf
    2021-05-07下载
    积分:1
  • c# 多线程分工协作例子源码下载(学习多线程)
    c# 多线程分工协作例子源码下载(学习多线程)
    2015-04-08下载
    积分:1
  • ADSL宽带拨号 (C#)实例源码下载
    实例截图: 部分源码:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using Lqarpjj.Study.Demo.ADLSTool.Class;using System.Diagnostics;using System.IO;using Microsoft.Win32;namespace Lqarpjj.Study.Demo.ADLSTool{ public partial class frmMain : Form { #region 自定义变量 /// /// 静态变量存储信息的地址文件 /// private static string ADSLPath = Application.StartupPath @"ADSL.ini"; private static string ConnectionsPath = Application.StartupPath @"create.vbs"; /// /// 定义Ini写入对象 /// private IniWrite ini = new IniWrite(ADSLPath); /// /// 判断第一登录 /// private bool IsFirst = true; /// /// /// private MD5.DES.Md5Class md5 = new MD5.DES.Md5Class(); /// /// /// public static string key = null; #endregion /// /// 构造函数 /// public frmMain() { InitializeComponent(); } #region 窗体事件 /// /// 窗体初始 /// /// /// private void frmMain_Load(object sender, EventArgs e) { SetToolTip(); IntiLoad(sender, e); } #endregion #region 控件按钮事件 /// /// 复制账号 /// /// /// private void btnCopyAccount_Click(object sender, EventArgs e) { if (this.chkSpecial.Checked)//判断特殊拨号是否勾选 { //进行加密 UsernameEncode encode = new UsernameEncode(); Clipboard.SetDataObject(encode.EncodeUsername(this.txtAccount.Text, this.txtPassword.Text)); } else { Clipboard.SetDataObject(this.txtAccount.Text); } MessageBox.Show("账号已经复制到剪贴板!", "复制成功"); } /// /// 拨号 /// /// /// private void btnDia_Click(object sender, EventArgs e) { if (this.txtAccount.Text.Trim() == "") { MessageBox.Show("账号不能为空", "输入错误"); txtAccount.Focus(); return; } if (this.txtPassword.Text.Trim() == "") { MessageBox.Show("密码不能为空", "输入错误"); txtPassword.Focus(); return; } this.NetDia(); } /// /// 找不到电话簿? /// /// /// private void lblNotFind_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { this.CreateConnections(); } /// /// 记住账号联动 /// /// /// private void chkRemAccount_CheckedChanged(object sender, EventArgs e) { if (!this.chkRemAccount.Checked) { this.chkRemPassword.Checked = false; } } /// /// 记住密码联动 /// /// /// private void chkRemPassword_CheckedChanged(object sender, EventArgs e) { if (this.chkRemPassword.Checked) { this.chkRemAccount.Checked = true; } } /// /// 自动登录启动 /// /// /// private void AutoConectTimer_Tick(object sender, EventArgs e) { this.AutoConectTimer.Enabled = false; new frmLinkInfo(this).Show(); base.Hide(); } #endregion #region 自定义方法 /// /// 初始登录 /// /// /// private void IntiLoad(object sender, EventArgs e) { FileInfo info = new FileInfo(ADSLPath); try { if (info.Exists) { this.ReadConfig(); } if (this.chkAutoDia.Checked)//是否自动登录 { this.AutoConectTimer.Start(); } } catch (Exception) { File.Delete(ADSLPath); this.frmMain_Load(sender, e); } } /// ///设置控件提示 /// private void SetToolTip() { ToolTip tip = new ToolTip(); tip.BackColor = System.Drawing.Color.Transparent; tip.SetToolTip(this.btnCopyAccount, "复制账号到剪贴板。如果勾选了特殊拨号,复制的则是加密过的账号。"); tip.SetToolTip(this.btnDia, "手动进行拨号。"); tip.SetToolTip(this.chkAutoDia, "勾选后,下次启动将自动拨号。"); tip.SetToolTip(this.chkSpecial, "如果你原本使用协同拨号器拨号,请勾选此项。"); tip.SetToolTip(this.chkRemPassword, "勾选后,将会保存密码信息,同时保存账号信息。"); tip.SetToolTip(this.chkRemAccount, "勾选后,将会保存账号信息,但不会保存密码信息。"); tip.SetToolTip(this.txtPassword, "在这里输入你的密码。如果有字母,有大小写之分。"); tip.SetToolTip(this.lblNotFind, "如果拨号时提示找不到电话簿,请点击这里。"); tip.SetToolTip(this.txtAccount, "在这里输入你的用户名,如果是特殊拨号不分大小写。"); tip.SetToolTip(this.chkAutoClo, "勾选后拨号成功将自动关闭程序,如果拨号失败,则不会自动关闭。"); } /// /// 写入配置信息 /// private void WriteConfig() { this.ini.Writue("用户设置", "记住账号", this.chkRemAccount.Checked.ToString()); this.ini.Writue("用户设置", "记住密码", this.chkRemPassword.Checked.ToString()); this.ini.Writue("用户设置", "特殊拨号", this.chkSpecial.Checked.ToString()); this.ini.Writue("用户设置", "自动连接", this.chkAutoDia.Checked.ToString()); this.ini.Writue("用户设置", "自动关闭", this.chkAutoClo.Checked.ToString()); this.ini.Writue("用户设置", "首次使用", this.IsFirst.ToString()); if (this.chkRemAccount.Checked) { this.ini.Writue("用户信息", "账号", this.md5.Encryption(this.txtAccount.Text)); this.ini.Writue("加密密钥", "账号", key); } if (this.chkRemPassword.Checked) { this.ini.Writue("用户信息", "密码", this.md5.Encryption(this.txtPassword.Text)); this.ini.Writue("加密密钥", "密码", key); } } /// /// 读取配置信息 /// private void ReadConfig() { this.chkRemAccount.Checked = bool.Parse(this.ini.ReadValue("用户设置", "记住账号")); this.chkRemPassword.Checked = bool.Parse(this.ini.ReadValue("用户设置", "记住密码")); this.chkSpecial.Checked = bool.Parse(this.ini.ReadValue("用户设置", "特殊拨号")); this.chkAutoDia.Checked = bool.Parse(this.ini.ReadValue("用户设置", "自动连接")); this.chkAutoClo.Checked = bool.Parse(this.ini.ReadValue("用户设置", "自动关闭")); this.IsFirst = bool.Parse(this.ini.ReadValue("用户设置", "首次使用")); if (this.chkRemAccount.Checked) { this.txtAccount.Text = this.md5.Decryption(this.ini.ReadValue("加密密钥", "账号"), this.ini.ReadValue("用户信息", "账号")); if (this.txtAccount.Text.Trim() == "") { this.txtAccount.Text = null; } } if (this.chkRemPassword.Checked) { this.txtPassword.Text = this.md5.Decryption(this.ini.ReadValue("加密密钥", "密码"), this.ini.ReadValue("用户信息", "密码")); if (this.txtPassword.Text.Trim() == "") { this.txtPassword.Text = null; } } } /// /// 判断是否是第一次使用本软件 /// private void IsFirstUse() { if (this.IsFirst) { if (MessageBox.Show("检测到您是初次使用本软件,是否自动创建一个名为【宽带连接】的连接?如果已经存在,请选否。", "初次使用", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { this.CreateConnections(); } this.IsFirst = false; this.WriteConfig(); } } /// /// 连接宽带 /// private void NetDia() { this.IsFirstUse(); new frmLinkInfo(this).Show(); base.Hide(); } /// /// 电话簿 /// private void CreateConnections() { Process[] processArray; StreamWriter writer = new StreamWriter(ConnectionsPath, false, Encoding.Default); writer.Write(this.GetVersion()); writer.Close(); Process process = new Process(); process.StartInfo.FileName = ConnectionsPath; process.StartInfo.CreateNoWindow = true; base.Hide(); process.Start(); process.WaitForExit(); File.Delete(ConnectionsPath); Label_006A: processArray = Process.GetProcesses(); foreach (Process process2 in processArray) { if (process2.ProcessName.ToString() == "rasphone") { goto Label_006A; } } base.Show(); } /// /// 获取版本? /// /// private string GetVersion() { StringBuilder str = new StringBuilder(); str.Append(""); str.Append("set ws=createobject("wscript.shell") "); str.Append(" ws.run "rasphone -a 宽带连接" "); str.Append(" wscript.sleep 200 "); str.Append(" ws.sendkeys "{t}" "); str.Append(" wscript.sleep 200 "); str.Append(" ws.sendkeys "{n}" "); str.Append(" wscript.sleep 200 "); str.Append(" ws.sendkeys "{enter}" "); str.Append(" wscript.sleep 200 "); str.Append(" ws.sendkeys "{enter}" "); if (Registry.LocalMachine.OpenSubKey(@"SoftwareMicrosoftWindows NTCurrentVersion").GetValue("ProductName").ToString() == "Windows 7 Ultimate") { str.Append(""); str.Append("set ws=createobject("wscript.shell")"); str.Append(" ws.run "rasphone -a 宽带连接""); str.Append(" wscript.sleep 200"); str.Append(" ws.sendkeys "{enter}""); str.Append(" wscript.sleep 200"); str.Append(" ws.sendkeys "{enter}""); } return str.ToString(); } #endregion }}
    2014-07-16下载
    积分:1
  • EzReportBuild 2.0报表组件源码和demo及说明
    2.0版本添加了多报表页功能,每份报表可设置多页,每页可设置不同的纸张大小、数据表、页面规则等,并可对报表页次序即时调整,同时,优化了显示,报表显示更流畅。EzReportBuild 2.0报表组件,可以完成报表设计、预览、打印等功能,提供接口函数,可以将设计、预览等嵌入到自定的winform中调用,使用简单,调用灵活。在你的工程项目里,新建一个窗体,添加按钮,使用:// 单独打开报表编辑器        private void button1_Click(object sender, EventArgs e)        {            _Interface.independent_DesignForm();    }打开设计器设计报表,保存报表后可去掉按钮,该工程项目生成的报表,别的应用不能打开查看。如需复杂数据报表,可先生成一个临时数据库表,然后引入报表系统,由于报表数据为按行读取,所以只要能够设计出数据库各字段和内容,就能够生成相应的报表。打印规则为“内容区域”栏目无论所在位置,紧跟页头栏,所以适当调整“页头区域”、“页脚区域”位置,保证按需求输出。制作每页多行数据报表,“内容区域”为自动计算填充“页头区域”、“页脚区域”之间的空间,应适当调整“内容区域”栏目和页头页脚之间的空间,达到最佳打印效果。如需在表格内添加空行,可在生成的报表数据库表中添加空记录即可。 注意:使用时,将fontawesome-webfont.ttf字体文件与exe文件放置在一起,使用Access数据库时,注意路径,如没有安装AccessDatabaseEngine.exe,可在微软网站下载,或在本压缩文件的soft文件夹中安装。 更新关注:https://www.cnblogs.com/qiaoke/p/10365440.html 设计器截图      预览截图 嵌入程序截图 多种纸张同时预览using System;using System.Drawing;using System.Windows.Forms;namespace Demo_1{ public partial class Form1 : Form { RBuild_Interface _Interface = new RBuild_Interface(); // 新建接口 RBuild_Preview rpb = new RBuild_Preview(); // 预览窗口对象 public Form1() { InitializeComponent(); } // 单独打开报表编辑器 private void button1_Click(object sender, EventArgs e) { _Interface.independent_DesignForm(); } // 单独打开报表预览 private void button2_Click(object sender, EventArgs e) { _Interface.independent_PreviewForm(@"测试报表1.rpt", 2, "", "", "", "地址库.mdb"); } private void button3_Click(object sender, EventArgs e) { // 按钮可以使用 b1.Enabled = true; b2.Enabled = true; b3.Enabled = true; b4.Enabled = true; b5.Enabled = true; b6.Enabled = true; b7.Enabled = true; b8.Enabled = true; _Interface.embedded_PreviewForm(rpb, panel1, @"测试报表1.rpt", 2, "", "", "", "地址库.mdb", true); } private void b1_Click(object sender, EventArgs e) { _Interface.preview_FirstPage(rpb); } private void b2_Click(object sender, EventArgs e) { _Interface.preview_PreviousPage(rpb); } private void b3_Click(object sender, EventArgs e) { _Interface.preview_NextPage(rpb); } private void b4_Click(object sender, EventArgs e) { _Interface.preview_LastPage(rpb); } private void b5_Click(object sender, EventArgs e) { _Interface.preview_Search(new Point(200,200)); } private void b6_Click(object sender, EventArgs e) { _Interface.zoom_Menu(rpb,new Point(300,200)); } private void b7_Click(object sender, EventArgs e) { _Interface.print_Page(rpb); } private void b8_Click(object sender, EventArgs e) { int _now, _tol; _now = _Interface.get_NowPage(rpb); _tol = _Interface.get_TotalPage(); MessageBox.Show("当前页:" _now "--- 总页数:" _tol); } }}
    2019-01-19下载
    积分:1
  • 2020牛客校招面试题库(附答案与解析)C++篇.pdf
    c 面经,讲解的非常到位,适合复习,共计219页
    2020-12-07下载
    积分:1
  • C# 扫描本地电脑指定类型的文件
    C# 扫描本地电脑指定类型的文件
    2015-09-19下载
    积分:1
  • asp.net RedisDemo
    asp.net RedisDemo
    2015-06-29下载
    积分:1
  • C# 微信机器人自动回复 例子源码下载
    实现了 简单的回话和查询天气的功能
    2015-04-18下载
    积分:1
  • LINQ TO SQLite 完整例子源码下载
    前言 当前,软件应用程序中,数据库已经成为不可缺少的重要组成部分.然而传统数据库正趋向巨无霸化,对系统的要求一步步提高,管理成本也越来越大,对于中小型项目的应用,它的很多功能变得越来越多余,但是我却不得不为这些不需要的功能付出更多的资金和人力成本. 在这些场景,嵌入式数据库的轻量,零部署,跨平台,义移植,无疑有着传统数据库无可比拟的优点,当然为此我们必须放弃高容量,高性能,高并发,不过谁在乎这些呢?我们只是中小型应用而已,大小不上百万,并发不超万^_^. 在.Net中,我们可以选择的嵌入式数据库还是挺多的,db4o,sqlite,各种xml db. 我之前更倾向于使用db4o,db4o对于用传统ADO.Net驱动的开发有更多的优势,无需手动Mapping,零SQL.不过整因为db4o做了很多处理,所以在数据持久化的过程中,我们能干预的也很少,而db4o在复合属性,级联属性,特别当整个系统使用富领域模型设计的时候,保存数据的时候往往会出错.为此我们不得不自己手工持久化复合对象中的各个对象,增加关联字段进行关联,这样一来就越加靠近SQL Server之类的传统数据库的时候,显得名不符实.而在web应用中,为了提供并发的能力,还必须使用server/client的模式进行数据传输.总让我感觉有那么点点别扭. 自从DLINQ出来之后,我的项目越来越依赖于它,它让我们的程序更加优雅清晰,再也不用无聊的拼凑一段又一段的sql,编写一遍又遍的配置.可惜的是MS只提供LINQ TO SQL(MS SQL SERVER)的实现. 还好LINQ思想出现之后,社区里涌现了各种各样的LINQ Provider程序,大有一切皆LINQ的架势(LINQ TO Everything),SQLite自然不例外.今天我们进来唠唠如何将SQLite引入我们的开发. ADO.Net Provider&LINQ Provider 首先,下载SQLite的LINQ Provider,在网上我们可以找到两个LINQ Provider For SQLite. 一个是phxsoftware的System.Data.SQLite,另一个是devart的dotConnect for SQLite. System.Data.SQLite是开源产品,而dotConnect For SQLite是商业产品(有个一个免费普通版本).我们这里选择System.Data.SQLite作为我们的LINQ Provider. 从Sourceforge下载SQLite-1.0.60.0-setup.exe,然后安装.结束的时候,会让你Install SQLite Design-Time Support,把里面的VS2005/VS2008 都打上勾 这样子你就可以在VS的Server Explorer里面像管理SQL Server的数据库一样管理你的SQLite数据库文件.安装完之后,我们得到以下文件 创建数据库 要创建一个空的SQLite数据库,可以选择两种方式. 1. 从http://www.sqlite.org/download.html下载Window下的程序(http://www.sqlite.org/sqlite-3_6_19.zip),然后通过命令行创建. .db3后缀名可以任意,你也可以使用其他的任意后缀名. 在sqlite>的shell下,必须输入什么,如果直接.exit退出的话,数据库文件将不会被创建 2.从http://www.sqlite.org/cvstrac/wiki?p=ManagementTools下载各种GUI程序. 数据库文件创建好了之后,拷贝到你想要的位置,然后打开VS的Server Explorer(当然如果你使用GUI程序,你就不需要VS的这个功能了),我们可以在里面维护表信息     我们先设计两个表,以便继续下面的步骤. 创建项目 创建DataContext 当你将表拉入dbml的时候,会得到如下错误"The selected object(s) use an unsupported data provider." dbml designer和DLINQ一样,微软只实现了For SQL SERVER的功能,其他数据库都没实现.既然不能生成dmbl,那我们生成code就好了,反正这个layout我们一般也没什么用.找到从windows sdk目录下找到Code Generation Tool (SqlMetal.exe). 不幸的是,这个东东也只支持MS本家的东西,而且不支持Generator扩展-_-!!!. 既然phxsoftware提供的LINQ Porivder,说不定有提供自定义的代码生成工具.不过看来看去,发现只支持Entity Frameworkd Entity Model的生成,但是没有LINQ TO SQLite的支持(dotConnect for SQLite 倒是对二者都支持). 难道我们要手动编写DataContext?怎么可能,肯定有人实现了,google下,找到了一个DLINQ2007的项目,提供好多LINQ Provider的实现(包括SQLite).发现里面有个DbMetal.exe,支持从SQLite生成DataContext类.虽然不如MS的的完美,不过能自动生成基本的DataContext,这就是最大的收获,不然像我这么依赖LINQ的人只好放弃SQLite了^_^.DbMetal.exe生成DataContext的命令行,类似SqlMetal.exe. DbMetal.exe /database:TestDataContext  /schema /namespace=LinqToSQLite /sprocs /entityInterfaces= /culture="en"  /code=Test.cs /provider=Sqlite  /conn="data source=D:docmydatacodeLinqToSQLitedllsTest.db3" /database指定类名, /namespace=LinqToSQLite指定命名空间...,具体的参数可以在命令行下获取到(dbmetal.exe /?). 不过这个DbMetal.exe一样不完善,不是什么结构都可以生成,比如数据库带有外键的话,生成就会出错.   生成后的代码大概如下(可能需要手工清理下SystemTable的对应的class): public partial class TestDataContext : DbLinq.Data.Linq.DataContext{ public TestDataContext(System.Data.IDbConnection connection): base(connection, new DbLinq.Sqlite.SqliteVendor()){} public TestDataContext(System.Data.IDbConnection connection, DbLinq.Vendor.IVendor vendor): base(connection, vendor){} public Table Order { get { return GetTable(); } } public Table OrderItem { get { return GetTable(); } } }  
    2013-07-20下载
    积分:1
  • C# 快递费用计算软件 源码
         switch (aa)            {                case "香港":                    float a;                    a = float.Parse(textBox1.Text);                    // textBox1.Text = a.ToString();                    if (a 1)                    {                        float b = a % 1;                        float c = a - b;                        if (b 0.5)                        {                            double res;                            res = c * 25 30;                            label3.Text = res.ToString();                        }                    }                     break;
    2014-09-10下载
    积分:1
  • 696518资源总数
  • 106155会员总数
  • 8今日下载