-
一套能用的C#小型餐厅餐饮管理系统 附源码和数据库
这是一款采用C#和SQLSERVER开发的小型餐厅餐饮管理系统 附源码和数据库,通过这个系统你可以对中小型餐厅消费进行管理,可实现对餐厅顾客开台、点菜/加菜、账目查询和结账等操作。
可自动检验输入数据,可实现消费账目自动结算以及消费历史记录查询,并且支持数据库端的模糊查询。
如果要使用本款系统,可使用Tsoft,密码为:111进行登录测试。
登录后分为三种操作权限:超级管理员、经理、一般用户,权限不同,所对应的操作也不尽相同哦。
关于本C#餐饮系统的使用:
单击鼠标右键,可进行开台、取消开台、点菜、消费查询及结账操作。锁定系统解锁密码为:111。如果添加菜品类别,需要在数据库中添加。
- 2022-08-06 19:31:14下载
- 积分:1
-
C# 轨迹动画 使动画对象沿着贝塞尔曲线平滑移动
C# 轨迹动画 使动画对象沿着贝塞尔曲线平滑移动,很明显的你会看到,小球是沿着给定的路径运动的,一会向上,一会向下运动,很明显的转变动画,在本例中,这个轨迹是贝塞尔曲线.
- 2022-09-18 20:15:03下载
- 积分:1
-
C#在图片格式转换时设置JPEG压缩级别的实现源码
C#在转换图像格式时设置JPEG压缩级别,运行程序在窗口上单击按钮后,会生成多个版本不同压缩级别的图片,图片大小字节都不一样,如下代码是实现本功能的核心代码:
Bitmap MyBitmap = new Bitmap(@"J001.jpg");
ImageCodecInfo MyDecoder = null;
ImageCodecInfo[] MyDecoders = ImageCodecInfo.GetImageDecoders();
foreach (ImageCodecInfo MyFormat in MyDecoders)
{
if (MyFormat.FormatID == ImageFormat.Jpeg.Guid)
{
MyDecoder = MyFormat;
}
}
System.Drawing.Imaging.Encoder MyEncoder =
System.Drawing.Imaging.Encoder.Quality;
EncoderParameters MyEncoderParameters = new EncoderParameters(1);
//以50中级压缩图像
EncoderParameter MyEncoderParameter = new EncoderParameter(MyEncoder, 50L);
MyEncoderParameters.Param[0] = MyEncoderParameter;
MyBitmap.Save("J50L.jpg", MyDecoder, MyEncoderParameters);
//以100高级压缩图像
MyEncoderParameter = new EncoderParameter(MyEncoder, 100L);
MyEncoderParameters.Param[0] = MyEncoderParameter;
MyBitmap.Save("J99L.jpg", MyDecoder, MyEncoderParameters);
//以0低级压缩图像
MyEncoderParameter = new Enc
- 2022-05-18 00:19:47下载
- 积分:1
-
C++实现XY坐标源码
框架为MFC,语言为C++,利用这两个实现了画XY坐标系的功能,功能测试公国,源码已上传!不足之处请大家多多指教!谢谢!!!!
好的功能想法,也可以留言 谢谢
- 2023-05-13 07:30:07下载
- 积分:1
-
C# 创建线程实例JoinThread源码
C#创建一个基本简单的线程实例,演示了如何创建线程,面向C#新手的一个例子:
Thread myThread;//声明线程
//用线程起始点的ThreadStart委托创建该线程的实例
myThread = new Thread(new ThreadStart(createThread));
myThread.Start();//启动线程
myThread.Join();//阻止调用该线程,直到该线程终止
Console.ReadLine();
- 2022-11-16 06:35:03下载
- 积分:1
-
C# 模拟Windows CMD Ping命令
C# 模拟Windows CMD Ping命令,这个Ping和Windows中的控制台Ping命令几乎一样,如果用户没有输入任何参数则给出提示,初始化一个ICMP类型的Socket,用户提供了主机名和循环参数(开关,“/r”),调用 PingHost 方法并将主机名作为参数传递给它,如果用户还提供了其他的参数则忽略,取得报文内容,转化为字节数组,然后计算报文的长度。
在校验和算法方面,把ICMP报头二进制数据以2字节为单位累加起来,若ICMP报头为奇数个字节,会剩下最后一字节。把最后一个字节视为一个2字节数据的高字节,这个2字节数据的低字节为0,继续累加。。
- 2023-05-08 16:20:03下载
- 积分:1
-
C# 从RichTextBox 控件中提取文本内容
C# 从RichTextBox 控件中提取文本内容,并设置RichTextBox 控件中的字体大小-附完整源代码,
private void button1_Click(object sender, RoutedEventArgs e)
{//从RichTextBox 控件中提取文本内容
TextRange MyText = new TextRange(this.richTextBox1.Document.ContentStart, this.richTextBox1.Document.ContentEnd);
MessageBox.Show(MyText.Text, "RichTextBox控件中的文本内容",MessageBoxButton.OK);
}
private void button2_Click(object sender, RoutedEventArgs e)
{//设置RichTextBox 控件中的字体大小
TextRange MyText = new TextRange(this.richTextBox1.Document.ContentStart, this.richTextBox1.Document.ContentEnd);
MyText.ApplyPropertyValue(TextElement.FontSizeProperty, 36.00);
MyText.ApplyPropertyValue(TextElement.FontWeightProperty, FontWeights.Bold);
- 2022-09-21 17:55:02下载
- 积分:1
-
C# 显示DataGridView控件中选定的单元格、行和列
Visual C#显示选择的DataGridView单元格,获取DataGridView控件中选定的单元格、行和列,测试前请连接好数据库,实现此功能核心代码如下:
if (customersDataGridView.AreAllCellsSelected(true))
{
MessageBox.Show("所有单元格已经被选择!", "信息提示",MessageBoxButtons.OK);
}
else
{
System.Text.StringBuilder MyInfo =new System.Text.StringBuilder();
for (int i = 0;
i < MyCount; i++)
{
MyInfo.Append("行号: ");
MyInfo.Append(customersDataGridView.SelectedCells[i].RowIndex.ToString());
MyInfo.Append(", 列号: ");
MyInfo.Append(customersDataGridView.SelectedCells[i].ColumnIndex.ToString());
MyInfo.Append(", 单元格值: ");
MyInfo.Append(customersDataGridView.SelectedCells[i].Value.ToString());
MyInfo.Append(Environment.NewLine);
}
MyInfo.Append("一共选择了: " + MyCount.ToString()+"个单元格");
MessageBox.Show(MyInfo.ToString(), "信息提示", MessageBoxButtons.OK);
}
- 2022-03-18 13:11:05下载
- 积分:1
-
C# timer应用范例:左右飘动的窗体
C# 创建一个飘动的窗体,左右飘动,主要是对Timer的控制,基本的原理是:窗体的左上角横坐标随着timer1不断加一,窗体的左上角横坐标随着timer2不断减一,这个过程由Timer控制,因此你要写出一个循环,来控制Timer不停变化,比如timer不断加一:
Point p = new Point(this.DesktopLocation.X + 1, this.DesktopLocation.Y);
this.DesktopLocation = p;
if (p.X == 630)
{
timer1.Enabled = false;
timer2.Enabled = true;
}
以上代码的执行我们放入到private void timer1_Tick私有函数中,运行程序后即运行该函数。
- 2023-03-26 23:00:04下载
- 积分:1
-
C# 复制和删除数据表指定行数据
C# 复制和删除数据表指定行数据,主要是完成了两项功能,删除目标数据表的选择行的整行数据,将源数据表的选择行数据复制到目标数据表,这两个功能的实现思路和代码演示如下:
private void Form1_Load(object sender, EventArgs e)
{
MySourceTable = new DataTable();
var MyConnectString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:Northwind.mdb";
var MySQL = "Select * From 客户";
var MyAdapter=new OleDbDataAdapter(MySQL,MyConnectString);
MyAdapter.Fill(MySourceTable);
this.DataGridView1.DataSource = MySourceTable;
MyTargetTable = MySourceTable.Clone();
this.DataGridView2.DataSource = MyTargetTable;
}
private void Button1_Click(object sender, EventArgs e)
{//将源数据表的选择行数据复制到目标数据表
var MyID= "客户ID=;
MyID = MyID + this.DataGridView1.CurrentRow.Cells[0].Value.ToString() +";
MyTargetTable.ImportRow(this.MySourceTable.Select(MyID)[0]);
}
private void Button2_Click(object sender, EventArgs e)
{//删除目标数据表的选择行的整行数据
var MyID = "客户ID=;
MyID = MyID +this.DataGridView2.CurrentRow.Cells[0].Value.ToString
- 2022-04-17 22:21:45下载
- 积分:1