zoukankan      html  css  js  c++  java
  • CS 系统框架二[部分内容更新]

    http://www.cnblogs.com/allen0118/archive/2012/05/10/2494112.html

    这边文章里面只是将大致的轮廓组织了一下,现在慢慢来将其完善,

    本次更新了2点内容,第一就是将权限细化到每一个按钮,因为当时设计的时候每一个窗体上面的菜单都是统一的,所以比较容易控制,

    开发文档

    以下代码比较重要,记录了一些全局的东西:

     1 public sealed class AllenSingleton
     2     {         
     3         private static volatile AllenSingleton instance;
     4         private static object syncRoot = new Object();
     5 
     6         private AllenSingleton() { }
     7         public static AllenSingleton Instance
     8         {
     9             get
    10             {
    11                 if (instance == null)
    12                 {
    13                     lock (syncRoot)
    14                     {
    15                         if (instance == null)
    16                             instance = new AllenSingleton();
    17                     }
    18                 }
    19                 return instance;
    20             }
    21         }
    22 
    23         public string strCon = Allen.Model.ConnectionModel.ConnectionString1;
    24         public string UserID;
    25         public string Password;
    26         public string UserDep;
    27         public string ServerID;
    28         public string Lang;                
    29         public FrmMain m_FrmMain;
    30         public string Company;
    31         public string AppConfigFile;
    32         public Dictionary<string, string> DicLang;       
    33         public string Role;
    34         public string RoleName; 
    35         public string WorkBeginTime;        
    36         public string currentlyVersion = "V1.0.0.1";
    37        
    38         public string AllowCreate;
    39         public string AllowDelete;
    40         public string AllowEdit;
    41         public string AllowPrint;
    42        
    43 
    44         public static class GlobalData
    45         {
    46             public static Dictionary<string, Action> dict = new Dictionary<string, Action>();
    47         }
    48 
    49 
    50     }

    后台数据库中会记录着每一个用户ID对应的操作命令,比如增加,删除,修改和查询以及打印等等,在用户登录的时候取到这几个操作命令的“值”。

    如下图所示:

    第二点就是增加了用户的详细信息,之前已经将数据表设计好了,只是刚开始的时候没有用到,现在将它派上用场了,其实就是多了几张表,关系数据库这样。

    图片拖拽主要是用到了控件的DragDrop和DragOver事件,值得注意的是控件的AllowDrop属性一定要设置为True才可,
    当时忘记设置这个属性,导致一直不成功,后来突然发现这个属性是的作用,才明白是怎么回事。

     1  private void UserPhoto_DragDrop(object sender, DragEventArgs e)
     2         {
     3             if (e.Data.GetDataPresent(DataFormats.FileDrop))
     4             {
     5                 string[] files = (string[])e.Data.GetData(DataFormats.FileDrop);
     6                 for (int i = 0; i <= file.Length - 1; i++)
     7                 {
     8                     if (System.IO.File.Exists(files[i]))
     9                     { 
    10                         UserPhoto.ImageLocation = files[i];                         
    11                         
    12                     }
    13                 }
    14             } 
    15         }
    16 
    17         private void UserPhoto_DragOver(object sender, DragEventArgs e)
    18         {
    19             if (e.Data.GetDataPresent(DataFormats.FileDrop))
    20             {
    21                 e.Effect = DragDropEffects.Move;
    22             } 
    23         }

    不断更新中...

查看全文
  • 相关阅读:
    佛学的经典 —— 《妙色王求法偈》
    dom4j的用法
    Android真机网络adb联机调试初探
    CString的部分实现剖析
    文件下载:"Content-disposition","attachment; filename=中文名>>>解决方案
    内存块重叠的判断方法
    闭包
    Twenty Newsgroups Classification任务之二seq2sparse(5)
    IE 加速插件之 Google Chrome Frame
    [Android面试题-7] 写出一个Java的Singleton类(即单例类)
  • 原文地址:https://www.cnblogs.com/allen0118/p/2675301.html
  • Copyright © 2011-2022 走看看