procedure SetTransparentForm (popupFrm:TForm;Color:TColor;AlphaBlendValue:Integer);
var FrmTransparent: TFrmTransparentForm;
begin
if not Assigned(FrmTransparent) then
FrmTransparent:=TFrmTransparentForm.Create(nil);
FrmTransparent.fPopupForm :=popupFrm; //
FrmTransparent.Color :=TColor(Color); //clTeal;//
FrmTransparent.AlphaBlendValue:=AlphaBlendValue;
FrmTransparent.FormStyle := fsNormal;
FrmTransparent.Visible := False;
FrmTransparent.ShowModal; //弹出透明窗体
FreeAndNil(FrmTransparent);
end;
//以上代码在 exe中没有任何问题,当把代码移到公共包中后:
//出现局部变量赋值异常(线程或主进程调用),各种调试测试,发现奇葩问题点,做以下调整和解释:
//局部变量和全局变量 若不首先赋值 :=nil 都会有异常。
procedure SetTransparentForm (popupFrm:TForm;Color:TColor;AlphaBlendValue:Integer);
var FrmTransparent: TFrmTransparentForm;
begin
//------------方法一
FrmTransparent := nil;//用私有变量,若没有此句,此段会异常,估计局部变量引起的 。^_^
if not Assigned(FrmTransparent) then
FrmTransparent:=TFrmTransparentForm.Create(nil);
FrmTransparent.fPopupForm :=popupFrm; //
FrmTransparent.Color :=TColor(Color); //clTeal;//
FrmTransparent.AlphaBlendValue:=AlphaBlendValue;
FrmTransparent.FormStyle := fsNormal;
FrmTransparent.Visible := False;
FrmTransparent.ShowModal; //弹出透明窗体
FreeAndNil(FrmTransparent);
//------------方法二
{FrmTransparentForm:=nil; //用全局变量,没有此句 会偶尔出现 cannot make a visible window model;估计线程原因。
if not Assigned(FrmTransparentForm) then
FrmTransparentForm:=TFrmTransparentForm.Create(nil);
FrmTransparentForm.fPopupForm :=popupFrm; //
FrmTransparentForm.Color :=TColor(Color);
FrmTransparentForm.AlphaBlendValue:=AlphaBlendValue;
FrmTransparentForm.FormStyle := fsNormal;
FrmTransparentForm.Visible := False;
FrmTransparentForm.ShowModal; //弹出透明窗体
FreeAndNil(FrmTransparentForm); }
end;

窗体Showmedol 遇到的奇怪异常-->进阶问题的更多相关文章

  1. 窗体Showmedol 遇到的奇怪异常: cannot make a visible window model

    //窗体Showmedol 遇到的奇怪异常: cannot make a visible window model //背景:ShowModal A窗体,A窗体再ShowModal B窗体:A是透明背 ...

  2. 3.Java异常进阶

    3.JAVA异常进阶 1.Run函数中抛出的异常 1.run函数不会抛出异常 2.run函数的异常会交给UncaughtExceptionhandler处理 3.默认的UncaughtExceptio ...

  3. 从GridView中直接导出数据到Excel文件 处理导出乱码 类型“GridView”的控件“XXXX”必须放在具有 runat=server 的窗体标记内。”的异常

    导出到Excel方法: <span style="color: rgb(0, 0, 255);">public</span> <span style= ...

  4. PyQt通过resize改变窗体大小时ListWidget显示异常

    前几天开始的pygame音乐播放器Doco,做的差不多了,上午做到了歌词显示和搜索页面.遇到bug,即通过resize改变ui大小时ListWidget显示异常 #目的: 增加一部分窗口用来显示歌词和 ...

  5. [转]Eclipse下开发Struts奇怪异常:org.apache.struts.taglib.bean.CookieTei

    今天早上开始在Eclipse下学习struts,于是按照李兴华老师的<struts入门视频教程>一步一步地充满快乐的学习,等把登陆程序写完,打开浏览器准备运行的时候,奇怪的异常产生了,异常 ...

  6. C#解决关闭多线程的form主窗体时抛出ObjectDisposedException 异常

    一.现象: 我在主窗体新建线程,使用子线程来处理接收到的数据,并且更新窗体显示内容,但关闭主窗体程序之后就程序就报错,如下所示: 二.分析问题: 由于新建线程的处理函数里边是一直死循环处理数据,虽然窗 ...

  7. ArcGIS Server SOE开发之奇怪异常:

    添加之后结果显示如下:fjsontokenezkBvir0Tj5q31UEst7pTFPwrwocmHklCajKeh-xXM91qWdBXDuQMmtGcaHaaXCJ 具体如下: 该SOE扩展在另 ...

  8. ArcEngine奇怪异常:HRESULT:0x80040351

    错误如图 根据该博客,http://blog.csdn.net/u011609113/article/details/51155116, 显示该错误为Duplicate Field Names wit ...

  9. awk 的一个奇怪异常

    awk: cmd. line:1: (FILENAME=- FNR=192) fatal: print to "standard output" failed (No space ...

随机推荐

  1. JavaScript面向对象和原型函数

    对象,是javascript中非常重要的一个梗,是否能透彻的理解它直接关系到你对整个javascript体系的基础理解,说白了,javascript就是一群对象在搅..(哔!). 常用的几种对象创建模 ...

  2. Apache SolrCloud安装

    1.介绍  SolrCloud通过ZooKeeper集群来进行协调,使一个索引进行分片,各个分片可以分布在不同的物理节点上,多个物理分片组成一个完成的索引Collection.SolrCloud自动支 ...

  3. 2. K线学习知识二

    1. K线 - 阳线 定义:阳线是证券市场上指收盘价高于开盘价的K线,K线图中用红线标注表示涨势. A:小阳星 全日中股价波动很小,开盘价与收盘价极其接近,收盘价略高于开盘价. 小阳星的出现,表明行情 ...

  4. C# 验证类(使用正则表达式 验证文本框)

    using System; using System.Text.RegularExpressions; namespace SG_VQCDataCollection { /// <summary ...

  5. ifram-locatione页面跳转

    在涉及银行页面时,需要跳转到银行页面var accound = document.getElemntById('accound');$.ajax({ dataType:'json', type:'po ...

  6. Android下LayoutInflater的使用

    在我们想XML布局文件转换为View对象的时候.我们都会使用LayoutInflate对象.顾名思义咋一眼就能看出来他是布局填充器.那么接下来看看LayoutInfalte的使用 总体分为 Layou ...

  7. [原创]Windows Server 2003 物理机转换为VMware虚拟机出现VSS错误的处理

    一台Windows Server 2003 物理机需要转换为VMware虚拟机,工具为Vmware vCenter Converter Standalone 6.0,转换开始就出现错误“FAILED: ...

  8. python升级

    一开始有这个需求,是因为用 YaH3C 替代 iNode 进行校园网认证时,一直编译错误,提示找不到 Python 的某个模块,百度了一下,此模块是在 Python2.7 以上才有的,但是系统的自带的 ...

  9. JDBC的操作总结

    JDBC  操作总结 JDBC是一组能够执行SQL语句的API JDBC的操作方式比较单一,简单的分为以下几个流程:  1.通过数据库厂商提供的JDB类库想DriverManager注册数据库驱动   ...

  10. css3 动画的有关属性

    transform transform: none|transform-functions; transform 属性向元素应用 2D 或 3D 转换.该属性允许我们对元素进行旋转.缩放.移动或倾斜. ...