SAP B1创建颜色选择器

2020-08-19 18:12发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨 我想在SAP业务之一中开发...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我想在SAP业务之一中开发一种新的选择器来选择颜色代码。 可以在SBO中注册新的选择器吗?

应该使用哪个类? 有样品吗?

任何帮助表示赞赏。

谢谢

2条回答
95年老男孩
2020-08-19 18:46

您应该使用以下内容。

代码:

使用系统;
 使用System.Drawing;
 使用System.Runtime.InteropServices;
 使用System.Windows.Forms;
 
 命名空间DialogHelper
 {
 
     公共静态类WindowsDialogHelper
     {
         公共静态int ColorDialog()
         {
             var colorSelector = new ColorDialog();
 
             var result = new STAInvoker (colorSelector,(x)=> x.ShowDialog(ForegroundWindowWrapper.GetWindow()))。Invoke();
 
 
             如果(结果!= DialogResult.OK)
                 返回-1;
 
             返回ColorTranslator.ToOle(colorSelector.Color);
         }
     }
    
     内部类ForegroundWindowWrapper:IWin32Window
     {
         [DllImport(" user32.dll")]
         私有静态外部IntPtr GetForegroundWindow();
 
         公共虚拟IntPtr句柄{ 组;  }
 
         公共ForegroundWindowWrapper(IntPtr句柄)
         {
             this.Handle =句柄;
         }
 
         公共静态ForegroundWindowWrapper GetWindow()
         {
             返回新的ForegroundWindowWrapper(GetForegroundWindow());
         }
     }
 } 

用法

私有无效Button0_ClickBefore(对象sboObject,SAPbouiCOM.SBOItemEventArg pVal,布尔泡泡事件)
 {
     BubbleEvent = true;
     int Color = WindowsDialogHelper.ColorDialog();
     如果(颜色!= -1)
     {
         this.UIAPIRawForm.Items.Item(" Item_1")。BackColor =颜色;
         this.UIAPIRawForm.Items.Item(" Item_2")。BackColor =颜色;
         this.UIAPIRawForm.Items.Item(" Item_4")。BackColor =颜色;
         this.UIAPIRawForm.Update();
     }
 } 

测试İmage

祝你好运。

一周热门 更多>