当前位置: 首页 > news >正文

合肥网站建设方案托管如何自己开发一个自己的网站

合肥网站建设方案托管,如何自己开发一个自己的网站,凡科网站设计模板,wordpress简约下载站模板下载在实际开发中,我发现很多程序员花很多时间在界面处理上.并且界面之间的关系和控制逻辑可能工作量并不小.所以好些老手到后面就跑去做后台服务,做通讯去了.界面布局和交互设计本身有很多的学问,或者有很多艺术,但是本文这里先不讨论这个问题.在QPG团队实践中,我们把界面划分成很…在实际开发中,我发现很多程序员花很多时间在界面处理上.并且界面之间的关系和控制逻辑可能工作量并不小.所以好些老手到后面就跑去做后台服务,做通讯去了.    界面布局和交互设计本身有很多的学问,或者有很多艺术,但是本文这里先不讨论这个问题.    在QPG团队实践中,我们把界面划分成很多的UI_PART,这和ASP.NET2.0的WebPart可能有相同的地方.我们用这些简单的PART进行接受输入或者展示结果.这样就可以比较方便的测试了.通常这些PART就是一些用户控件,我们提供了IMainForm接口,使得UI的容器可以动态调入这些部件,哪怕程序已经运行,您也可以编写一个PART,您只要把它放到bin\plugins目录即可.    有时部件可能要和容器通讯,看看下面的代码您可能就会明白:IMainForm 成员#region IMainForm 成员        public string CurUserID {            get {                // TODO:  添加 Form1.CurUserID getter 实现                return admin;            }        }        public object getCookie(string name) {            // TODO:  添加 Form1.getCookie 实现            return name;        }        public void addCookie(string name, object obj) {            // TODO:  添加 Form1.addCookie 实现        }        public QPG.UIP.Privilege getPrivilegeByUser(string uid, string cmdName) {            // TODO:  添加 Form1.getPrivilegeByUser 实现            return  QPG.UIP.Privilege.Full;        }        public void showStatus(string msg) {            MessageBox.Show(msg);        }        public void showHelp(string help) {            // TODO:  添加 Form1.showHelp 实现        }        public void showNotify(string title, string msg) {            MessageBox.Show(msg);        }        #endregion要使用插件服务.您的代码Form容器大致如下:public class Form1 : System.Windows.Forms.Form,IMainForm    {        private System.ComponentModel.IContainer components;        private System.Windows.Forms.Panel panel1;        public static PluginService Pluginsnew PluginService();        private QPG.UIP.Actions.ActionList actionList1;        private QPG.UIP.Actions.Action action1;        private QPG.UIP.Actions.Action action2;    //    protected IPlugin selectedPlugin;        public Form1()        {            //            // Windows 窗体设计器支持所必需的            //            InitializeComponent();            Plugins.MainFormthis;                    action1.TagDemo.UIC.Plugin1;            action2.TagDemo.UIC.Plugin2;            action1.Executenew EventHandler(runAction);            action2.Executenew EventHandler(runAction);        //    Tester tnew Tester();        //    t.testParametersConfig();        }        private void runAction(object sender, System.EventArgs e) {            QPG.UIP.Actions.Action asender as QPG.UIP.Actions.Action;                    if(getPrivilegeByUser(admin, a.Tag.ToString())Privilege.None) return;                    selectedPluginPlugins.FindPlugin(a.Tag.ToString() );            panel1.Controls.Clear();            panel1.Controls.Add(selectedPlugin.MainInterface);            selectedPlugin.MainInterface.DockDockStyle.Fill;        }插件的编写就很简单了大致如下using System;using QPG.UIP;namespace Demo.UIC{    /**//// summary    /// Plugin2    /// /summary    public class Plugin1 :  BasePlugin      {        public Plugin1():base()        {                    }        protected override void init()        {            base.init();                this.myRequimentNo  uca01;                        this.myDescription统计图;            this.myAuthoralex;                                                    }                                    public override void Initialize()        {            this.MainInterfacenew PlugUI1();        }                public override void Dispose()        {            //Put any cleanup code in here for when the program is stopped        }    }}using System;using System.Collections;using System.ComponentModel;using System.Drawing;using System.Data;using System.Windows.Forms;using QPG.UIP;namespace Demo.UIC{    /**//// summary    /// Summary description for ctlMain.    /// /summary    public class PlugUI1 : PluginBaseUI    {            private System.Windows.Forms.Label label1;        private System.Windows.Forms.GroupBox groupBox1;        private System.Windows.Forms.TextBox txtFeedback;        private System.Windows.Forms.Button button1;        /**//// summary         /// Required designer variable.        /// /summary        private System.ComponentModel.Container components  null;        public PlugUI1()        {            // This call is required by the Windows.Forms Form Designer.            InitializeComponent();            // TODO: Add any initialization after the InitializeComponent call        }        /**//// summary         /// Clean up any resources being used.        /// /summary        protected override void Dispose( bool disposing )        {            if( disposing )            {                if(components ! null)                {                    components.Dispose();                }            }            base.Dispose( disposing );        }//        private void button1_Click(object sender, System.EventArgs e) {            this.PluginHost.showStatus(txtFeedback.Text);        }                    }} 具体代码可以参阅:下载开发演示文件 转载于:https://www.cnblogs.com/QPG2006/archive/2005/10/07/249662.html
http://www.pierceye.com/news/483339/

相关文章:

  • 建设局网站买卖合同大连 商城网站制作公司
  • 网站开发实训意义湖州网站设计
  • 网站后台设置企业为什么要网站建设
  • 外贸网站推广平台有哪些怎么在亚马逊上开店铺
  • 网站模板下载简单的那种哪个网站可以做结婚请柬
  • 自建网站迁移wordpress 电影下载站
  • 深圳定制网站建设服务公司友情连接
  • 网络设计工资多少杭州seo网站排名优化
  • 免费空间申请网站网站开发技术联系方式
  • 增加访客的网站做网站 套用模板之后用什么改
  • 徐州企业网站排名优化建网站用什么浏览器
  • 大型网站频道的建设需多人协同开发网站建设产品中心
  • 学校网站建设状况好的建设网站
  • 庐江住房建设局网站做外汇关注的网站
  • 重庆市建设工程造价管理总站东莞网站包年优化
  • 南通公司快速建站建设网站的和服务器
  • 网站图片怎么做缓存太平洋建设 网站
  • 建造网站需要什么羽毛球赛事介绍
  • 广告联盟怎么建设网站淄博网页设计师招聘
  • 会员中心网站模板wordpress头像禁用
  • 网站优化工作怎么样无网站无产品链接如何做SOHO
  • 移动网站建设方案小型手机网站建设
  • 小学校园网站建设方案吉林关键词优化的方法
  • 网站导航条只做公司网站方案
  • 网站如何宣传网站建设难点是什么
  • 重庆网站网络推广推广制作app的软件手机版
  • 西安学校网站建设多少钱网站icp备案是什么
  • 蛇口网站建设做新房什么网站好
  • 网站开发怎么找客户网站制作哪个好薇
  • 腾讯云wed服务器做网站360优化大师下载官网