(37)uniGUI for CBuilder UniSweetAlert控件详解

(中行雷威2019.12.5)

(同一个世界,同一个梦想,交流学习C++Builder and Delphi XE10,传承c++builder and Delphi的魅力!欢迎各地朋友加入我的QQ群484979943、299497712,860634510,进群密码“BCB”,同时也请将该群号广为宣传,希望能够广集各方高手,共同进步。如需下载开发工具及源代码请加入我的QQ群。)

【阅读倡议】

1、有问题请留言;

2、没问题请点赞;

3、看连载请加群;

4、下源码请加群;

【开发工具】

1、C++Builder and Delphi 10.3.3

2、FMSoft_uniGUI_Complete_Professional_1.70.0.1514(正版)

本人主笔的国内第一本uniGUI教学案例代码已诞生,分为cbuilder和delphi两个版本,买代码送手册,需要的朋友可以加入我的QQ技术交流群484979943、299497712,860634510给我(群主)留言。资料简介:

https://www.meipian.cn/20b86ayo?share_from=others&user_id=64168117&uuid=a8a75af8c0cc31e6a21b8a79a2b07398&share_depth=1&first_share_uid=64168117&utm_medium=meipian_android&share_user_mpuuid=94b70e99e8b6986c71b270a9883befb2
 

5.32如何使用UniSweetAlert控件

         UniSweetAlert是UniGUI后期版本新增的一个界面友好的消息提示和输入控件,是ShowMessageN的升级版,UniSweetAlert增加了更多的可控制属性。

5.32.1 属性介绍

1、AlertType:提示类型,分为atError、atSuccess、atInfo、atQuestion、atWarning五种类型,主要控制提示界面顶部的图标样式;

2、AllowEscapeKey:是否允许Esc键关闭提示界面;

3、AllowOutsideClick:是否允许点击提示框外部区域关闭提示界面;

4、Animation:动画;

5、CancellButtonText:取消按钮中文内容;

6、ConfirmButtonText:确认按钮中文内容;

7、FocusCancel:焦点定位到取消按钮上;

8、Images:关联的图标控件,提示框中上数第二个图标;

9、InputType:输入类型,有ltNone、ltFile、ltMail、ltSelect、ltPassword、ltRaido等多种类型;

10、InputValue:初始显示的输入内容;

11、ReverseButtons:反向顺序摆放按钮,“确认”“取消”变为“取消”“确认”;

12、ShowCancellButton:显示取消按钮;

13、ShowCloseButton:显示提示框右上角的关闭按钮;

14、ShowConfirmButton:显示确认按钮;

15、ShowLoaderOnConfirm:显示确认前的预处理过程;

16、Title:提示信息;

         创建一个新项目,按照下图添加和摆放各个控件,分别设置UniComboBox1、UniEdit1~4的FieldLabel标签属性,为UniNativImageList1添加一个小图片,让UniSweetAlert1的Images设为UniNativeImageList1,让ImageIndex设为0。三个按钮分别代表不同的应用方法,点击“一般交互提示”按钮将弹出提示框,操作“确认”和“取消”按钮都将提示操作结果;点击“判断执行结果”按钮将弹出提示框,仅操作“确定”按钮有操作结果提示,操作“取消”按钮没有操作结果提示;点击“预处理后执行”按钮将弹出提示框,操作“确定”按钮后将经过一个执行时间后再返回执行结果提示。

  

5.32.2 主要代码

1、Main.h

class TMainForm : public TUniForm

{

__published:    // IDE-managed Components

private:    // User declarations

         void __fastcall ConfigSweetAlert(bool ShowLoader);

public:                // User declarations

         __fastcall TMainForm(TComponent* Owner);

};

//---------------------------------------------------------------------------

TMainForm *MainForm(void);

//---------------------------------------------------------------------------

#endif

 

  1. Main.cpp

1)属性配置函数

void __fastcall TMainForm::ConfigSweetAlert(bool ShowLoader)

{

UniSweetAlert1->AlertType=(TAlertType)(UniComboBox1->ItemIndex);//设置提示类型

UniSweetAlert1->AllowEscapeKey=UniCheckBox1->Checked;//是否允许按ESC

UniSweetAlert1->AllowOutsideClick=UniCheckBox2->Checked;//是否允许外部点击

UniSweetAlert1->CancelButtonText=UniEdit1->Text;//取消按钮的中文内容

UniSweetAlert1->ConfirmButtonText=UniEdit2->Text;//确认按钮的中文内容

UniSweetAlert1->ShowCancelButton=UniCheckBox3->Checked;//是否显示取消按钮

UniSweetAlert1->ShowCloseButton=UniCheckBox4->Checked;//是否显示关闭按钮

UniSweetAlert1->ShowLoaderOnConfirm=ShowLoader;//是否确认前等待

UniSweetAlert1->Title=UniEdit3->Text;//提示信息

if(UniCheckBox5->Checked)

         {

         UniSweetAlert1->InputType=ItText;

         UniSweetAlert1->InputValue=UniEdit4->Text;

         }

else

         {

         UniSweetAlert1->InputType=ItNone;

    }

}

2)“一般交互提示”按钮事件

void __fastcall TMainForm::UniBitBtn1Click(TObject *Sender)

{

  ConfigSweetAlert(false);

  UniSweetAlert1->Show();//显示提示

}

3)“判断执行结果”按钮事件

void __fastcall TMainForm::UniBitBtn2Click(TObject *Sender)

{

ConfigSweetAlert(false);

if (UniSweetAlert1->Execute())//根据执行结果进行提示

         {

         ShowMessageN("执行结果:成功! '"+ UniSweetAlert1->InputResult);

         }

}

4)“预处理后执行”按钮事件

void __fastcall TMainForm::UniBitBtn3Click(TObject *Sender)

{

ConfigSweetAlert(True);

UniSweetAlert1->Show();

 

}

5)UniSweetAlert“确认”按钮事件

void __fastcall TMainForm::UniSweetAlert1Confirm(TObject *Sender)

{

if(UniCheckBox5->Checked)

         {

         ShowMessageN("确认:你输入了 " + UniSweetAlert1->InputResult);

         }

else

         {

         ShowMessageN("确认");

    }

}

6)UniSweetAlert“取消”按钮事件

void __fastcall TMainForm::UniSweetAlert1Dismiss(TObject *Sender, const TDismissType Reason)

{

switch (Reason)

         {

         case dtOverlay:

                   ShowMessageN("驳回原因:覆盖");

                   break;

         case dtCancel:

                   ShowMessageN("驳回原因:取消");

                   break;

         case dtClose:

                   ShowMessageN("驳回原因:关闭");

                   break;

         case dtESC:

                   ShowMessageN("驳回原因:按了ESC");

                   break;

         case dtTimer:

                   ShowMessageN("驳回原因:超时");

                   break;

         }

}

7)UniSweetAlert“预处理”按钮事件

 

void __fastcall TMainForm::UniSweetAlert1PreConfirm(TObject *Sender, bool &Result,

          UnicodeString &ErrorString)

{

Sleep(2000); // 模拟等待!

Result = True;

ShowMessageN("确认:你输入了 " + UniSweetAlert1->InputResult);

}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值