此文主要基于C#制作一个桌面宠物,可自定义宠物素材图片及打开外部exe的快捷菜单。

  • 实现流程
    • 1.1、创建项目
    • 1.2、准备素材
    • 1.3、控件设置
      • (1)PictureBox控件
      • (2)timer控件
      • (3)contextMenuStrip控件
    • 1.4、生成为exe程序
    • 1.5、设置开机自启
  • 代码块

实现流程

1.1、创建项目

  1. 打开Visual Studio,右侧选择创建新项目。

  1. 搜索框输入winform,选择windows窗体应用,填写对应的保存路径点击下一步,创建成功后如下图。


  1. 将Form1的FormBorderStyle属性设置为None,这时窗体效果则由下图1变成了图2的样子。

1.2、准备素材

这里简单放了几张罗小黑的gif素材,大家可以根据自己的喜好准备。

1.3、控件设置

(1)PictureBox控件

在工具箱搜索PictureBox控件,将其拖拽到窗体上。

给PictureBox设置一张默认背景图,并通过Size属性设置其宽高。

(2)timer控件

在工具箱搜索Timer控件,将其拖拽到窗体上。
Timer控件是一种通过引发Timer事件,可以有规律地隔一段时间执行一次代码的控件,这里主要是用这个控件实现素材切换的效果。

在窗体代码顶部定义数组,存放素材数据。

public Bitmap[] Resource = {Properties.Resources.罗小黑0,Properties.Resources.罗小黑1,Properties.Resources.罗小黑2};

双击拖拽进来的timer控件,定义随机数,设置控件背景图,这里随机数不要大于你的素材的数量,不然会有越界的情况。


private void timer_Tick(object sender, EventArgs e)
{int random = new Random().Next(0, 2);picBox.Image = (Image)Properties.Resources.ResourceManager.GetObject($"罗小黑{random}");}

回到窗体上,右击timer控件,设置Interval属性值,控制切换素材的频率

(3)contextMenuStrip控件

在工具箱搜索contextMenuStrip,将其拖拽到窗体上,ContextMenuStrip实际就是上下文菜单,就是右键单击某个窗体或者控件后出来的菜单。

单击选中pictureBox,在其contextMenuStrip属性中选择刚才所添加的控件

单击contextMenuStrip,在上方文本框处配置菜单

双击菜单进去,即可配置点击时对应的响应事件,这里先简单配置下是否能够打开外部exe程序

Process m_Process = null;
m_Process = new Process();
m_Process.StartInfo.FileName = @"这里放你的外部exe程序路径";
m_Process.Start();

1.4、生成为exe程序

右击解决方案,点击生成

左下角显示生成成功后,在文件夹中打开项目

从bin文件夹到Debug文件夹,单击后缀为exe的应用程序桌面宠物就呈现出来了。

1.5、设置开机自启

  1. 复制该应用程序的快捷程序。
  2. win + r 键打开运行,在文本框输入 shell:startup,回车确认。
  3. 将复制的程序粘贴进来就搞定了。

代码块

public Bitmap[] Resource = {Properties.Resources.罗小黑0,Properties.Resources.罗小黑1,Properties.Resources.罗小黑2
};
private Boolean IsMouseDown = false;
private Point MousePoint;
private Boolean hide = false;
public Box()
{InitializeComponent();
InitMenu();
}
private void timer_Tick(object sender, EventArgs e)
{int random = new Random().Next(0, 14);"你的puctureBox控件名".Image = (Image)Properties.Resources.ResourceManager.GetObject($"罗小黑{random}");
}
private void Lxh_MouseMove(object sender, MouseEventArgs e)
{if (IsMouseDown){Point snap = Cursor.Position;this.Location = new Point(Location.X + (snap.X - MousePoint.X), Location.Y + (snap.Y - MousePoint.Y));MousePoint = Cursor.Position;}
}
private void Lxh_MouseDown(object sender, MouseEventArgs e)
{IsMouseDown = true;MousePoint = Cursor.Position;
}private void Lxh_MouseUp(object sender, MouseEventArgs e)
{IsMouseDown = false;
}/// <summary>/// 退出程序/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void Exists_Click(object sender, EventArgs e){System.Environment.Exit(0);}/// <summary>/// 显/隐/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void Display(object sender, EventArgs e){if (hide){this.Show();}else{this.Hide();}hide = !hide;}/// <summary>/// 文件资源管理器/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void Explorer(object sender, EventArgs e){Helper.StartProcess("Explorer.exe");}private void toolStripMenuItem1_Click(object sender, EventArgs e){Process m_Process = null;m_Process = new Process();m_Process.StartInfo.FileName = @"这里放外部exe程序路径";m_Process.Start();}

基于C#制作一个桌面宠物相关推荐

  1. 用 Python 制作一个桌面宠物,好玩

    今天,我们来分享一个宠物桌面小程序,全程都是通过 PyQT 来制作的,对于 Python GUI 感兴趣的朋友,千万不要错过哦! 我们先来看看最终的效果,对于一个小小的娱乐项目来说,还是不错啦! 本文 ...

  2. 用 Python 制作一个桌面宠物,好玩!

    今天,我们来分享一个宠物桌面小程序,全程都是通过 PyQT 来制作的,对于 Python GUI 感兴趣的朋友,千万不要错过哦! 我们先来看看最终的效果,对于一个小小的娱乐项目来说,还是不错啦! 本文 ...

  3. 如何用unity制作一个桌面宠物?

    unity版本为:2018.3.14 1.找到带动画模型 获取途径: ① unity官方有免费模型和付费模型. ② 有mmd转unity的转换器. 我使用的是"Little Heroes M ...

  4. 基于C#制作一个ChatGPT桌面助手

    基于C#制作一个ChatGPT桌面助手,在工作或者学习时提升自己的效率,工欲善其事,必先利其器. 一.前言 1.1.什么是ChatGPT 1.2.ChatGPT官网及key申请 二.后台项目 2.1. ...

  5. python软件桌面图标_python制作一个桌面便签软件

    # 2014.10.15 更新了memo.zip, 网盘的exe:修复:1.隔日启动不能正常加载json,加入:1.隐藏任务栏图标,2.通过垃圾桶进行窗口移动. # 2014.10.8 10.36更新 ...

  6. python制作一个桌面小工具

    python实现一个桌面小工具,制作一个桌面的便签提醒工具 参考代码:https://github.com/cosven/memo 参考链接:https://www.jb51.net/article/ ...

  7. 基于 Vue 制作一个猜拳小游戏

    目录 前言: 项目效果展示: 对应素材: 代码实现思路: 实现代码: 总结: 前言: 在工作学习之余玩一会游戏既能带来快乐,还能缓解生活压力,跟随此文一起制作一个小游戏吧. 描述: 石头剪子布,是一种 ...

  8. 基于 js 制作一个倒计时

    目录 前言: 项目效果展示: 代码实现思路: 使用方法: 重点功能讲解: 实现代码: 总结: 前言: 很多网站在做活动时,会出现一个截止时间倒计时的提示,跟随此文做一个倒计时吧! 项目效果展示: 代码 ...

  9. 基于.NET 制作一个气象站 IoT 应用

    点击"阅读原文"获得最佳阅读体验. 和单片机不同,使用 Linux 开发板.现成的传感器套件以及合适的后端技术几乎可以做成任何东西.为了更好的整合前面章节介绍的内容,本文将制作一个 ...

最新文章

  1. linux shell 设置 标准 错误流 输出流 不显示
  2. (诡异事件)iframe标签后面的alert不执行
  3. 如何消除代码山中那一大坨参数列表
  4. 2017.3.23 特别行动队 思考记录
  5. 服务器路径和本地路径在使用cd时候的区别
  6. 代码查看工具_不好用打我 | 六个前端开发在线工具推荐
  7. 国内比较好的几大酷站收藏网分享
  8. const限定符用法汇总
  9. 正版python软件多少钱-有奖|这 18 个好用的正版软件、热门的付费教程限时超低价了...
  10. C++ 中cin的输入原理及字符串(string、char[])输入问题
  11. 同花顺手机显示切换服务器,同花顺怎么开多个副屏,同花顺一机多屏显示设置...
  12. Protel99se电路设计速成-熊健-专题视频课程
  13. 想知道如何在Mac上剪切文件吗?一定要看这篇文章!
  14. 【文件格式探究】EP.1 对ePub文件格式的初探
  15. 使用 ifconfig 查看本机 ip
  16. ARM LDR汇编指令
  17. 任意多边形面积—有向面积
  18. 为什么计算机不显示桌面工具栏,word菜单栏不见了-电脑任务栏显示桌面图标不见了怎么办...
  19. 微信小程序实现分类列表
  20. 微信的QQ邮箱助手不提醒,怎么解决?

热门文章

  1. 懒惰(Laziness)、急躁(Impatience)和傲慢(Hubris)
  2. 美通企业日报 | 应届生平均起薪7566元京沪最高;00后月均零花钱约470元
  3. 【CF1509B】TMT
  4. Java安全(十三) SSM-Spring框架
  5. linux内存懒分配,Linux 性能分析总结之内存缓存与Swap(四)
  6. 64位W7系统安装内存8G,但是系统只显示3.2G,是怎么回事?
  7. 使用Qt 6.4取消Android开发的限制
  8. TP3.2 如何设置 防跳墙访问
  9. 残忍的沟里学姐 (数据结构作业)
  10. 关于功放的正确调整及安全匹配音箱方法的计算及说明