金桥科普  
设为首页 关于我们 邮箱登录
科普聚焦时代科技科普生活科学技术自然科学航空航天科技博览历史考古电脑IT
您现在的位置: 首页 >> 科普频道 >> 技巧实践 >> 文章详情
Delphi应用编程答疑解惑

金奕 赛迪网-中国计算机报 2001-11-03

  问:如何实现控件面板的平滑滚动t

  答:安装过许多控件的朋友都知道,在众多的控件中选择一个实在不是一件轻松的事,鼠标要不停点击,如果能平滑滚动该多好啊,其实我们也能实现这一想法。

  建立一个文本文件,输入如下内容:

 
  REGEDIT4

  [hkey_current_usersoftwareorlandDelphi.0xtras]

  "autopaletteselect"="1"

  "autopalettescroll"="1"

  保存该文本文件为tip.reg,然后双击此文件,启动Delphi,看看效果如何。

  问:在Delphi中如何实现TWebbrowser页面打印?

  答:我们可以利用以下代码在Delphi中实现TWebbrowser的页面打印。

  procedure TForm1.Button1Click(Sender: TObject); 

  var 

   vaIn, 

   vaOut: OleVariant; 

  Begin 

   WebBrowser1.Navigate('www.google.com');

   WebBrowser1.ControlInterface.ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER, vaIn, vaOut); 

  end; 

  问:如何实现Treeview自动展开并显示节点?

  答:我们可以利用以下代码轻松实现Treeview自动展开并显示所有节点的功能。

  var

   lnNode: TTreeNode;

  begin

   lnNode := TreeView1.Items.GetFirstNode;

   while not (lnNode = nil) do begin

   lnNode.Expand(False);

   lnNode := lnNode.GetNextSibling;

   end;

  end; 

  问:在Delphi中如何实现自动隐藏Windows的任务栏?

  答:在Delphi中实现自动隐藏Windows的任务栏的方法是首先在uses中加入ShellAPI,然后在程序中添加如下代码:

  function IsTaskbarAutoHideOn : boolean;

  var

   ABData : TAppBarData;

  begin

   ABData.cbSize := sizeof(ABData);

   Result :=

   (SHAppBarMessage(ABM_GETSTATE, ABData)

   and ABS_AUTOHIDE) > 0;

  end;

  问:Delphi中如何监视光驱中是否有光盘?

  答:我们可以利用以下代码轻松实现此功能。

  procedure Tform1.WMDEVICECHANGE(var msgx :Tmessage);

  const

   DBT_DEVICEARRIVAL=;

   DBT_DEVICEREMOVECOMPLETE=;

  begin

   inherited;

   case msgx.WParam of

   DBT_DEVICEARRIVAL:Caption :='有光盘';

   DBT_DEVICEREMOVECOMPLETE:Caption :='没有光盘';

   end;

  end;

  问:在Delphi中如何监测Winsock的运行情况?

  答:我们可以利用以下代码监测Winsock是否运行。

  uses Winsock; 

  function WinsockEnabled: boolean; 

  var wsaData: TWSAData; 

  begin 

   result := true; 

   case Winsock.WSAStartup(,wsaData) of 

   WSAEINVAL, WSASYSNOTREADY, WSAVERNOTSUPPORTED: result := false; 

   else 

   Winsock.WSACleanup; 

   end; 

  end

  问:在Delphi中如何判断系统网络连接方式?

  答:我们可以利用以下代码在Delphi中判断系统网络连接方式。

  uses wininet; 

  Function ConnectionKind :boolean; 

  var 

   flags: dword; 

  begin 

   Result := InternetGetConnectedState(@flags, 0);

   if Result then 

   begin 

   if (flags and INTERNET_CONNECTION_MODEM) = INTERNET_CONNECTION_MODEM then 

   begin 

   showmessage('Modem'); 

   end; 

   if (flags and INTERNET_CONNECTION_LAN) = INTERNET_CONNECTION_LAN then 

   begin 

   showmessage('LAN'); 

   end; 

   end; 

  end;

  运行后,我们只要看到返回的消息就可知道系统网络的连接方式了。

  发表评论 写信给编辑 关闭窗口
同栏目内容
· 让你的电脑启动画面绚起来 2007-09-12
· 小技巧帮大忙 极点五笔 2007-09-05
· 如何提高迅雷的下载速度? 2007-09-03
· Vista小技巧 消除红眼 2007-09-03
· 千千静听实用小功能 2007-08-29
· 四大妙招帮你成功的隐藏文件 2007-08-20
相关内容
近期主推
我国首架自主产权飞机完成
·我国首架自主产权飞机完成
·机器人版"千手观音"惊艳亮相
·西藏发现青藏高原最大冰川群
·中日: "月亮女神"携手"嫦娥"
·行星大碰撞砸死恐龙催生人类
·美研制会飞汽车定价9万美元
近期热门
科学家解开中子星爆发之谜
·科学家解开中子星爆发之谜
·英海域惊现大龙虾为普通龙虾5倍
·新物种金蛙体表有剧毒
·我国嫦娥工程计划测量月球
·精神病药物可治多种癌症
·视觉震撼:来自海底的精灵
近期焦点
美国发现极其罕见的白化银鲛(图)
·美国发现极其罕见的白化银鲛(图)
·美国展出罕见连体双胎双头龟
·波罗的海发现罕见短吻真海豚
·能帮你做大扫除的机器人[组图]
·法老墓3000年前坚果保存完好
·广西发现罕见溶洞钟乳石有30万年
金桥科普是一个公益性栏目,内容由作者提供或摘自互联网,其目的是向广大网民普及科学技术知识。如果您发现本网站转载或摘编了您拥有著作权的作品,请通知我们(电话:023-63659911),我们立即删除。
关于我们 | 网站地图 | 用户注册 | 广告客户 | 招聘信息 | 业务信息
Copyright@2006-2009 JQInfo.com,WONDER. All Rights Reserved
重庆科技咨询中心.重庆网得信息技术有限公司.版权所有
Email:webmaster@jqinfo.com
重庆数据通信局提供网络带宽. 渝ICP备05002327号