c# 小小备忘录

小说:腾讯旗下最赚钱的游戏作者:海辛建纯更新时间:2018-12-15字数:74794

这是应该的,工作室各方各面的事都落实得差不多后,看时间不早,丁宁便和杨度告别,打了辆的,赶向梁沁所说的海岛茶餐厅。

如何靠一台电脑赚钱

龙形玉佩泛着墨绿色的光芒,显得很诡异,但唐欣对此已经见怪不怪了。
“原来如此,小鬼我想我知道你想要什么了,你很好,没有打算将我变成你的人柱力,也很诚实,我很乐意和你完成这个交易。

这时候,手下两个兄弟上来,将一包炸药放在门边,示意韩非他们退下,随后一拉导火索,急忙拼命朝后面跑下来!

c# 小小备忘录


一、简述

              备忘录,相信大家生活中都使用过,比如记笔记、手机备忘录等等,这些都是记录自己灵感时所想、定期内想做的事情,好像跑题了,说说我的备忘录吧,我的备忘录功能上也就是增删改查的操作,另加到时提醒、语音播放内容,很简单吧,但是实用,好了,想看设计点吧。

 

二、设计

              1、数据库设计

                    数据库用的是SQLite

                    数据库表:Sys_Kind、Memorandum

                    Sys_Kind是一个通用字典表,这个对初学者有帮助,如下图:

                    

                    

 

                    解析:ID不用说了,自增的标识,K_Name:字典名称,K_Parent:父类型标识,就是说如果K_Parent为0,那么它就是一个类型,然后子字典就以它作为父类,这个字段键入父类ID值即可,K_Sort排序就是单个类型的排序,或者你也可以将所有数据作为排序也行,K_AddTime添加时间,K_Desc字典描述,这样可以便于后来的人查看这个是用来干什么的,K_State字典状态,这个呢,可以灵活应用,用来是否显示某个字典或者其他多状态都可以,K_Code字典代码值,这个就很重要了,这个就用作字典的值,很多人或许会问,为什么不用自增ID呢,因为如果类型很多的情况下,这个ID值会越来越大,你定义的类型值本身没有几个,而它的值还这么大,何必呢,旁边这个表就是备忘录表,我就不解释了,自己慢慢体会。

             2、程序设计(上图)

                         

                  

              这个呢,大家都知道哈,就是普普通通的增删改查,没什么大的技术含量

 

三、核心技术

              1、自动查询备忘录

                    这一块呢,相信大家都知道,可以用Timer这个控件,的确可以用Timer,当然这里,我用的不是Timer控件,而是System.Threading.Timer这个类,当然需要了解相关的用法,大家可以百度搜索,也可以去这儿https://msdn.microsoft.com/zh-cn/library/system.threading.timer(v=vs.110).aspx看看,当然我也贴出代码,让大家参考一下。

               

//声明一个委托
private delegate void SetTimerLogicCallback();

//声明一个定时器的类
private System.Threading.Timer threadTimer;

//执行委托的方法,ShowMemorandumInfo是查询数据库的方法
private void ThreadMethod(object obj)
        {
            SetTimerLogicCallback timerLogic = new SetTimerLogicCallback(ShowMemorandumInfo);
            this.Invoke(timerLogic);
        }


 /// <summary>
        /// 定时器设置,这个方法或者这段代码可以写在窗体加载的时候
        /// </summary>
        private void TimerSet()
        {
             threadTimer = new System.Threading.Timer(new System.Threading.TimerCallback(ThreadMethod), null, 0, 1000);
        }

             2、语音播报内容

                  这块我用了两个方面的技术,一个就是微软自带的System.Speech.Synthesis.SpeechSynthesizer语音识别的类,第二个就是百度提供的语音识别接口,为什么用两个呢,如果我们用户机上面没网,那么就可以使用微软自带的语音识别功能,如果用户机没装微软的语音识别,那么就可以使用百度的语音识别接口,如果没网、机器也没装微软的语音识别,那么你可以打包程序自动装微软自带语音识别的安装包或者其他插件异或组件,当然,这个安装包肯定比你的程序大很多,估计现在除了用xp的,win7的没有几个没自动装语音识别的吧,好了,下面就是代码:

                 

        /// <summary>
        /// 微软语音识别
        /// </summary>
        /// <param name="content">提示内容</param>
        public static void SpeakAsync(string content)
        {
            try
            {
                if (synth != null)
                    synth.Dispose();
                synth = new System.Speech.Synthesis.SpeechSynthesizer();
                synth.SpeakAsyncCancelAll();
                synth.SpeakAsync(content);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }



        /// <summary>
        /// 百度语音合成(文档网站:http://yuyin.baidu.com/docs/tts/197)
        /// </summary>
        private void BaiduTts(string audioText)
        {
            _ttsClient = new Baidu.Aip.Speech.Tts("API_KEY", "SECRET_KEY ");
            // 可选参数
            var option = new Dictionary<string, object>()
                {
                    {"spd", 5}, // 语速
                    {"vol", 7}, // 音量
                    {"per", 4}  // 发音人,4:情感度丫丫童声
                };
            var result = _ttsClient.Synthesis(audioText, option);
            if (result.ErrorCode == 0)
            {
                string fileName = Application.StartupPath + "\" + Guid.NewGuid().ToString() + ".mp3";
                System.IO.File.WriteAllBytes(fileName, result.Data);
                axWindowsMediaPlayer1.URL = fileName;
                axWindowsMediaPlayer1.Ctlcontrols.play();
                System.IO.File.Delete(fileName);
            }
            else
            {
                Utils.LogMessage("百度语音合成异常", result.ErrorMsg);
            }
        }

 

 总结:这是一个简单的备忘录程序,欢迎初学者学习,大神就随便看看就行了,欢迎大家点赞转发

当前文章:http://zxqss.com/content/12-04/27827/content_7169157381.html

发布时间:2018-12-15 04:14:56

互联网赚平台 有没有可以挂机赚钱 手机怎么在家日赚200 云微投资是骗局吗 网上兼职信息麻不麻烦 猪八戒网兼职美工 网购刷单兼职是真的 徐州招聘兼职网58同城网

编辑:成董卓丁

我要说两句: (0人参与)

发布