登录
首页 » C# » 比较简单但有实用的图片浏览器程序

比较简单但有实用的图片浏览器程序

于 2022-05-19 发布 文件大小:9.33 kB
0 144
下载积分: 2 下载次数: 1

代码说明:

比较简单但有实用的图片浏览器程序-relatively simple but practical procedures Photo Browser

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

发表评论

0 个回复

  • MT6225
    mtk平台6225驱动程序,便于手机与pc连接(mtk platform 6225 driver, easy to phone and pc connection)
    2010-05-22 10:58:12下载
    积分:1
  • SeismicLab
    地震软件包,包括时域反褶积和小波估计,码/移相移相算法等(seisLab,include time domain deconvolution and wavelet estimation./codes/dephasing: Dephasing algorithm)
    2012-08-28 20:41:26下载
    积分:1
  • 93079604
    下载的一个不错的HMM程序,主要实现HMM中的viterbi最佳路径选择算法,用vc编写,可以根据自己需要参考修改 this()
    2018-03-28 18:36:04下载
    积分:1
  • Euler_DG_Quadrilateral_2D
    自己写了一个二维Euler方程的间断有限元程序 上次发了一个三角形单元的程序 因为不是曲边单元 所以在圆柱后面容易形成涡 现在把程序改为曲边四边形单元了 没有涡出现 单元是8节点四边形单元 节点编号顺序是 1 5 2 6 3 7 4 8 也就是四个角点依次 是1 2 3 4 然后是边的中点编号 5 6 7 8. 时间推进采用 Runge-Kutta 方法 数值通量采用全局Lax-Friedrichs通量 仍然不能捕捉激波 因为没有做重构或者加人工粘性 等这个做出来了 再发一次。 程序没有进行优化 比如说内存的消耗没有优化 比如直边单元的边界积分仍然采 用了曲边的积分方法 增加了计算量 比如面积分、线积分都是采用的是Gauss- Legendre-Lobatto积分 积分精度会比一般的Gauss-Legendre积分精度低一阶 等 等问题。 二维的 纯属交流性质 就没有考虑这些问题 ^_^ 如果物面全部是直边 那么只要改变一个参数N 就可以获得不同的计算精度 且具 有谱精度 因为单元的节点是Gauss-Legendre-Lobatto积分点。 其实就是谱元法 (物面是曲边的情况我不清楚是不是也可以通过提高基函数的阶数 也就是增加N 来提高计算精度)(Wrote a two-dimensional Euler equations with discontinuous finite element program Last made ​ ​ a triangular element of the program, not curved edge unit is so easy to form a vortex in the cylinder behind the Program to curved edge quadrilateral element vortices appear Unit is the order of 8-node quadrilateral element node number is 15,263,748 which is the four corners of the points in turn Is 1234 and then the side of the midpoint of the number 5678. Time promote the use of Runge-Kutta method Numerical flux of the overall situation of Lax-Friedrichs, flux Still can not capture the shock wave did not do the reconstruction or artificial viscosity do it Zaifayici. The program is not optimized for example, memory consumption is not optimized such as straight-edge boundary integral of the unit is still mining Integral method to increase the amount of computation such as surface integral with a curved edge, the line integral using the Gauss- The Legendr)
    2021-01-29 12:58:40下载
    积分:1
  • capacity
    capacity log added for refernces
    2016-04-24 11:58:19下载
    积分:1
  • c#Winform自定义控件
    c#Winform自定义控件-基类控件,按钮,有图标的按钮,选择按钮组,复选框,单选框,进度条,分割线,树,横向列表,列表,分页控件,导航菜单,键盘,文本框,表格,日期控件,Tab页,下拉框,步骤控件,有标题的面板,圆形进度条,面包屑导航,开关等等。using System;using System.Collections.Generic;using System.ComponentModel;using System.Drawing;using System.Data;using System.Linq;using System.Text;using System.Windows.Forms;namespace HZH_Controls.Controls{    ///     /// Class UCBtnsGroup.    /// Implements the     ///     ///     public partial class UCBtnsGroup : UserControl    {        ///         /// 选中改变事件        ///         [Description("选中改变事件"), Category("自定义")]        public event EventHandler SelectedItemChanged;        ///         /// The m data source        ///         private Dictionary m_dataSource = new Dictionary();        ///         /// 数据源        ///         /// The data source.        [Description("数据源"), Category("自定义")]        public Dictionary DataSource        {            get { return m_dataSource; }            set            {                m_dataSource = value;                Reload();            }        }        ///         /// The m select item        ///         private List m_selectItem = new List();        ///         /// 选中项        ///         /// The select item.        [Description("选中项"), Category("自定义")]        public List SelectItem        {            get { return m_selectItem; }            set            {                m_selectItem = value;                if (m_selectItem == null)                    m_selectItem = new List();                SetSelected();            }        }        ///         /// The m is multiple        ///         private bool m_isMultiple = false;        ///         /// 是否多选        ///         /// true if this instance is multiple; otherwise, false.        [Description("是否多选"), Category("自定义")]        public bool IsMultiple        {            get { return m_isMultiple; }            set { m_isMultiple = value; }        }        ///         /// Initializes a new instance of the class.        ///         public UCBtnsGroup()        {            InitializeComponent();        }        ///         /// Reloads this instance.        ///         private void Reload()        {            try            {                ControlHelper.FreezeControl(flowLayoutPanel1, true);                this.flowLayoutPanel1.Controls.Clear();                if (DataSource != null)                {                    foreach (var item in DataSource)                    {                        UCBtnExt btn = new UCBtnExt();                        btn.BackColor = System.Drawing.Color.Transparent;                        btn.BtnBackColor = System.Drawing.Color.White;                        btn.BtnFont = new System.Drawing.Font("微软雅黑", 10F);                        btn.BtnForeColor = System.Drawing.Color.Gray;                        btn.BtnText = item.Value;                        btn.ConerRadius = 5;                        btn.Cursor = System.Windows.Forms.Cursors.Hand;                        btn.FillColor = System.Drawing.Color.White;                        btn.Font = new System.Drawing.Font("微软雅黑", 15F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Pixel);                        btn.IsRadius = true;                        btn.IsShowRect = true;                        btn.IsShowTips = false;                        btn.Location = new System.Drawing.Point(5, 5);                        btn.Margin = new System.Windows.Forms.Padding(5);                        btn.Name = item.Key;                        btn.RectColor = System.Drawing.Color.FromArgb(224, 224, 224);                        btn.RectWidth = 1;                        btn.Size = new System.Drawing.Size(72, 38);                        btn.TabStop = false;                        btn.BtnClick = btn_BtnClick;                        this.flowLayoutPanel1.Controls.Add(btn);                    }                }            }            finally            {                ControlHelper.FreezeControl(flowLayoutPanel1, false);            }            SetSelected();        }        ///         /// Handles the BtnClick event of the btn control.        ///         /// The source of the event.        /// The instance containing the event data.        void btn_BtnClick(object sender, EventArgs e)        {            var btn = sender as UCBtnExt;            if (m_selectItem.Contains(btn.Name))            {                btn.RectColor = System.Drawing.Color.FromArgb(224, 224, 224);                m_selectItem.Remove(btn.Name);            }            else            {                if (!m_isMultiple)                {                    foreach (var item in m_selectItem)                    {                        var lst = this.flowLayoutPanel1.Controls.Find(item, false);                        if (lst.Length == 1)                        {                            var _btn = lst[0] as UCBtnExt;                            _btn.RectColor = System.Drawing.Color.FromArgb(224, 224, 224);                        }                    }                    m_selectItem.Clear();                }                btn.RectColor = System.Drawing.Color.FromArgb(255, 77, 59);                m_selectItem.Add(btn.Name);            }            if (SelectedItemChanged != null)                SelectedItemChanged(this, e);        }        ///         /// Sets the selected.        ///         private void SetSelected()        {            if (m_selectItem != null && m_selectItem.Count > 0 && DataSource != null && DataSource.Count > 0)            {                try                {                    ControlHelper.FreezeControl(flowLayoutPanel1, true);                    if (m_isMultiple)                    {                        foreach (var item in m_selectItem)                        {                            var lst = this.flowLayoutPanel1.Controls.Find(item, false);                            if (lst.Length == 1)                            {                                var btn = lst[0] as UCBtnExt;                                btn.RectColor = System.Drawing.Color.FromArgb(255, 77, 59);                            }                        }                    }                    else                    {                        UCBtnExt btn = null;                        foreach (var item in m_selectItem)                        {                            var lst = this.flowLayoutPanel1.Controls.Find(item, false);                            if (lst.Length == 1)                            {                                btn = lst[0] as UCBtnExt;                                break;                            }                        }                        if (btn != null)                        {                            m_selectItem = new List() { btn.Name };                            btn.RectColor = System.Drawing.Color.FromArgb(255, 77, 59);                        }                    }                }                finally                {                    ControlHelper.FreezeControl(flowLayoutPanel1, false);                }            }        }    }}using System;using System.Collections.Generic;using System.ComponentModel;using System.Drawing;using System.Data;using System.Linq;using System.Text;using System.Windows.Forms;using System.Drawing.Drawing2D;namespace HZH_Controls.Controls{    ///     /// Class UCStep.    /// Implements the     ///     ///     [DefaultEvent("IndexChecked")]    public partial class UCStep : UserControl    {        ///         /// Occurs when [index checked].        ///         [Description("步骤更改事件"), Category("自定义")]        public event EventHandler IndexChecked;        ///         /// The m step back color        ///         private Color m_stepBackColor = Color.FromArgb(189, 189, 189);        ///         /// 步骤背景色        ///         /// The color of the step back.        [Description("步骤背景色"), Category("自定义")]        public Color StepBackColor        {            get { return m_stepBackColor; }            set            {                m_stepBackColor = value;                Refresh();            }        }        ///         /// The m step fore color        ///         private Color m_stepForeColor = Color.FromArgb(255, 77, 59);        ///         /// 步骤前景色        ///         /// The color of the step fore.        [Description("步骤前景色"), Category("自定义")]        public Color StepForeColor        {            get { return m_stepForeColor; }            set            {                m_stepForeColor = value;                Refresh();            }        }        ///         /// The m step font color        ///         private Color m_stepFontColor = Color.White;        ///         /// 步骤文字颜色        ///         /// The color of the step font.        [Description("步骤文字景色"), Category("自定义")]        public Color StepFontColor        {            get { return m_stepFontColor; }            set            {                m_stepFontColor = value;                Refresh();            }        }        ///         /// The m step width        ///         private int m_stepWidth = 35;        ///         /// 步骤宽度        ///         /// The width of the step.        [Description("步骤宽度景色"), Category("自定义")]        public int StepWidth        {            get { return m_stepWidth; }            set            {                m_stepWidth = value;                Refresh();            }        }        ///         /// The m steps        ///         private string[] m_steps = new string[] { "step1", "step2", "step3" };        ///         /// Gets or sets the steps.        ///         /// The steps.        [Description("步骤"), Category("自定义")]        public string[] Steps        {            get { return m_steps; }            set            {                if (m_steps == null || m_steps.Length Steps.Length)                    return;                m_stepIndex = value;                Refresh();                if (IndexChecked != null)                {                    IndexChecked(this, null);                }            }        }        ///         /// The m line width        ///         private int m_lineWidth = 2;        ///         /// Gets or sets the width of the line.        ///         /// The width of the line.        [Description("连接线宽度,最小2"), Category("自定义")]        public int LineWidth        {            get { return m_lineWidth; }            set            {                if (value < 2)                    return;                m_lineWidth = value;                Refresh();            }        }        ///         /// The m img completed        ///         private Image m_imgCompleted = null;        ///         /// Gets or sets the img completed.        ///         /// The img completed.        [Description("已完成步骤图片,当不为空时,已完成步骤将不再显示数字,建议24*24大小"), Category("自定义")]        public Image ImgCompleted        {            get { return m_imgCompleted; }            set            {                m_imgCompleted = value;                Refresh();            }        }        ///         /// The m LST cache rect        ///         List m_lstCacheRect = new List();        ///         /// Initializes a new instance of the class.        ///         public UCStep()        {            InitializeComponent();            this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);            this.SetStyle(ControlStyles.DoubleBuffer, true);            this.SetStyle(ControlStyles.ResizeRedraw, true);            this.SetStyle(ControlStyles.Selectable, true);            this.SetStyle(ControlStyles.SupportsTransparentBackColor, true);            this.SetStyle(ControlStyles.UserPaint, true);            this.MouseDown = UCStep_MouseDown;        }        ///         /// Handles the MouseDown event of the UCStep control.        ///         /// The source of the event.        /// The instance containing the event data.        void UCStep_MouseDown(object sender, MouseEventArgs e)        {            var index = m_lstCacheRect.FindIndex(p => p.Contains(e.Location));            if (index >= 0)            {                StepIndex = index 1;            }        }        ///         /// 引发 事件。        ///         /// 包含事件数据的 。        protected override void OnPaint(PaintEventArgs e)        {            base.OnPaint(e);            var g = e.Graphics;            g.SetGDIHigh();            if (m_steps != null && m_steps.Length > 0)            {                System.Drawing.SizeF sizeFirst = g.MeasureString(m_steps[0], this.Font);                int y = (this.Height - m_stepWidth - 10 - (int)sizeFirst.Height) / 2;                if (y < 0)                    y = 0;                int intTxtY = y m_stepWidth 10;                int intLeft = 0;                if (sizeFirst.Width > m_stepWidth)                {                    intLeft = (int)(sizeFirst.Width - m_stepWidth) / 2 1;                }                int intRight = 0;                System.Drawing.SizeF sizeEnd = g.MeasureString(m_steps[m_steps.Length - 1], this.Font);                if (sizeEnd.Width > m_stepWidth)                {                    intRight = (int)(sizeEnd.Width - m_stepWidth) / 2 1;                }                int intSplitWidth = 20;                intSplitWidth = (this.Width - m_steps.Length - (m_steps.Length * m_stepWidth) - intRight - intLeft) / (m_steps.Length - 1);                if (intSplitWidth < 20)                    intSplitWidth = 20;                m_lstCacheRect = new List();                for (int i = 0; i < m_steps.Length; i )                {                    #region 画圆,横线                    Rectangle rectEllipse = new Rectangle(new Point(intLeft i * (m_stepWidth intSplitWidth), y), new Size(m_stepWidth, m_stepWidth));                    m_lstCacheRect.Add(rectEllipse);                    g.FillEllipse(new SolidBrush(m_stepBackColor), rectEllipse);                    if (m_stepIndex > i)                    {                        g.FillEllipse(new SolidBrush(m_stepForeColor), new Rectangle(new Point(intLeft i * (m_stepWidth intSplitWidth) 2, y 2), new Size(m_stepWidth - 4, m_stepWidth - 4)));                    }                    if (m_stepIndex > i && m_imgCompleted != null)                    {                        g.DrawImage(m_imgCompleted, new Rectangle(new Point((intLeft i * (m_stepWidth intSplitWidth) (m_stepWidth - 24) / 2), y (m_stepWidth - 24) / 2), new Size(24, 24)), 0, 0, m_imgCompleted.Width, m_imgCompleted.Height, GraphicsUnit.Pixel, null);                    }                    else                    {                        System.Drawing.SizeF _numSize = g.MeasureString((i 1).ToString(), this.Font);                        g.DrawString((i 1).ToString(), Font, new SolidBrush(m_stepFontColor), new Point(intLeft i * (m_stepWidth intSplitWidth) (m_stepWidth - (int)_numSize.Width) / 2 1, y (m_stepWidth - (int)_numSize.Height) / 2 1));                    }                    #endregion                    System.Drawing.SizeF sizeTxt = g.MeasureString(m_steps[i], this.Font);                    g.DrawString(m_steps[i], Font, new SolidBrush(m_stepIndex > i ? m_stepForeColor : m_stepBackColor), new Point(intLeft i * (m_stepWidth intSplitWidth) (m_stepWidth - (int)sizeTxt.Width) / 2 1, intTxtY));                }                for (int i = 0; i < m_steps.Length; i )                {                    if (m_stepIndex > i)                    {                        if (i != m_steps.Length - 1)                        {                            if (m_stepIndex == i 1)                            {                                g.DrawLine(new Pen(m_stepForeColor, m_lineWidth), new Point(intLeft i * (m_stepWidth intSplitWidth) m_stepWidth - 3, y ((m_stepWidth) / 2)), new Point(intLeft i * (m_stepWidth intSplitWidth) m_stepWidth intSplitWidth / 2, y ((m_stepWidth) / 2)));                                g.DrawLine(new Pen(m_stepBackColor, m_lineWidth), new Point(intLeft i * (m_stepWidth intSplitWidth) m_stepWidth intSplitWidth / 2, y ((m_stepWidth) / 2)), new Point(intLeft (i 1) * (m_stepWidth intSplitWidth) 10, y ((m_stepWidth) / 2)));                            }                            else                            {                                g.DrawLine(new Pen(m_stepForeColor, m_lineWidth), new Point(intLeft i * (m_stepWidth intSplitWidth) m_stepWidth - 3, y ((m_stepWidth) / 2)), new Point(intLeft (i 1) * (m_stepWidth intSplitWidth) 10, y ((m_stepWidth) / 2)));                            }                        }                    }                    else                    {                        if (i != m_steps.Length - 1)                        {                            g.DrawLine(new Pen(m_stepBackColor, m_lineWidth), new Point(intLeft i * (m_stepWidth intSplitWidth) m_stepWidth - 3, y ((m_stepWidth) / 2)), new Point(intLeft (i 1) * (m_stepWidth intSplitWidth) 10, y ((m_stepWidth) / 2)));                        }                    }                }            }        }    }}
    2020-12-11下载
    积分:1
  • videocompressionpaper
    本论文首先系统地介绍了视频压缩编码的基本原理和方法,以及各国际标准 化组织提出的压缩标准;其次分析了JPEG和MPEG-4的主要技术,据此提出 MPEG-4简单框架编码器的软件实现方案,给出流程图,在VC++环境下用C语言 程序实现了JPEG压缩及MPEG-4简单框架的视频压缩功能,采用测试序列验证 无误,并对两种标准的压缩比进行试验对比,突出压缩的关键技术为DCT和运动 估计算法;接着深入研究了DCT变换、运动估计和补偿算法并进行了优化改进, 给出了用于快速匹配块的自适应十字模式搜索算法,并给出了对各种块匹配估计 算法的仿真结果。然后详细介绍了TI公司TMS320C6711DSP的软硬件特性,并 在此基础上提出系统的硬件实现方案。接着介绍了基于系统软硬件环境的移植问 题和优化方法,并针对算法移植和仿真过程中的问题进行了说明。 最后就课题设计过程中研究的结果予以总结,并阐述了以后课题研究的要点。(In this thesis,an introduction to video compression principal,methods and central international video coding standards is done firstly.Then analyzing the core techniques of JPEG and MPEG-4 and proposing a scheme of MPEG-4 SP encoder,the coding function of JPEG and MPEG-4 is achieved in C successfully with test sequence Then compare the compressed ratio of two standards,point out the key of compression is DCT and Motion Estimation algorithm.Afterwards,studying the DCT/Motion Estimation/Motion Compensation algorithm in detail and giving an adaptive rood pattern search for fast Block-Matching motion estimation.Then the simulation of several motion estimation algorithms based block-matching is given.Accordingly,a scheme of a DSP-based video compression system is put forward,with the features of TI’s TMS320C6711 DSP.At last,the transplant and optimization are considered on the basis of soft and hard environments,also the simulation process. In the end,the summarization about the)
    2009-09-18 10:40:44下载
    积分:1
  • bilidaoyinfa
    比例导引法的几个matlab程序,根据绝对弹道进行编程设计(Proportional navigation law matlab program, according to the absolute ballistic Programming)
    2013-05-18 15:16:35下载
    积分:1
  • Canival-(42)
    KIA Carnival car HVAC system source code. Using dsPIC33FJ256 CPU, BOSCH 1.1 CAN communication, adapted Electricity Car. u/Cos v2.86, Monitoring by RS232
    2021-05-06 20:28:37下载
    积分:1
  • vomuo
    一个类似winhelp的程序,可以对windows help文件进行解释(A similar winhelp program, to explain the Windows help file)
    2017-03-23 20:14:08下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载