当前位置:魔方大厦源码下载Delphi源码其他 → 源码信息
仿windows操作界面
运行环境:Win9X/Win2000/WinXP/Win2003
源码语言:简体中文
源码类型:编程源码 - Delphi源码 - 其他
授权方式:免费源码
源码大小:418 KB
推荐星级:
更新时间:2007-3-23 9:10:06
联系方式:暂无联系方式
官方主页:Home Page
插件情况:
本站推荐:
解压密码:本站默认解压密码:www.mofang.net
下载统计:

源码简介

仿windows操作界面,环境:PB9.0
写这个东西迷惑了好长时间,因为任务栏一直不知道怎么做(一直没想到是窗口)
后来想用API去截取窗口的状态,于是找到了FindWindowEx函数,这不算什么,只是
一个例程的附加说明说:  windows的任务栏是一个特殊形式的窗口叫: "Shell_TrayWnd"
才解开迷雾,同时也解决了 w_desktop,打开后的大小问题(具体看它的open事件)



桌面窗口:  w_desktop:所有窗口的父窗口,装载任务栏窗口和桌面图片
任务栏:    w_taskbar + uo_taskbar :w_taskbar 作用是将窗口置于最上
   uo_taskbar是改变任务栏的border用的.
任务项用户对象:  uo_task_item: 取打开的功能窗口的title,并在w_taskbar
 上打开
测试用窗口: w_test_ancestor : 
用户事件:   ue_getminmaxinfo :控制窗口最在化后的尺寸,以与自己的任务栏对应
    ue_confirmwin: 当窗口最大化时,固定窗口(因为用 ue_getminmaxinfo )
    后最大化的窗口可以移动

其它的就不用说了吧,都有注解,而且调用简单

------braveQQ


//******************************************************
此次作的改进:
一.  任务栏可以拖动变成浮动效果,
二.  浮动的任务栏靠左边界或靠右边界时自动隐藏,自动弹出( 很好看:) )
三.  自动根据状态栏的状态( float   or   bottom )调整taskitem
四.  一些固定的值全部用常量,见下面的instance variable


不足之处:
1.去掉了以前test窗口的ue_getminmaxinfo事件!当窗口最大化时,任务栏会覆盖窗口的一部分.而不去掉的话
  当窗口由浮动变成置底时,无法改变大小,一样会覆盖窗口的一部分,网友们可以自已写程序,当任务栏置底时
  动态改变statusbar和窗口里的其它控件的位置. (当然如果有哪位网友知道用API函数直接改变窗口在最大化时
  的大小那更好,并且请一定告诉我: brave_qq@hotmail.com  (找这种功能花了我好长时间 :PPPPP) 
2.任务栏的自动隐藏功能的事件没有写在w_taskbar里,而是写在了其它窗口的 mousemove里
  如果网友们有更好的方法,请一定联系我,谢谢!

建议:这个里面还可以再加一些功能,如,加checkbox,让用户选择下次进入系统时是浮动还是底部. 当taskbar
     浮在中间时,只显示其上的空白部分,也就是做成像靠左或靠右时的自动隐藏一样(我很懒,觉得这样差不多了
     所以就没再写其它的功能:))

新添加的

1. 在 uo_taskitem 下写了两个函数:
   a . of_setoriginal_color( al_color )
   设置taskitem 原始的颜色,也是  taskitem 的styleraised 颜色  ;   
参数取taskbar的颜色,这样网友们只需改变taskbar的颜色就可相应改变taskitem的颜色  :)
   b .  of_setlowered_color(  )
设置stylelowered 颜色 : 固定值. 网友们可改里面的值,以改变taskitem的颜色


2. w_taskbar 窗口的实例变量
   uo_task_item   iu_taskitem[]
   int  ii_taskcount
   //桌面窗口的高度和宽度
   long il_desk_width,il_desk_height
   //任务栏的颜色
   long il_taskbar_color
   //标志是: "float" , 还是"bottom"
   string is_float_pos
   //是否第一次打开
   boolean ib_first_open
   //  taskbar置于底部时,用固定高度
   CONSTANT INT II_BOTTOM_HEIGHT = 96
   // 所有  taskitem之间所分隔的距离
   CONSTANT INT II_SPLIT_SPACE = 30
   //  当taskbar 为float时留给其顶部的空间
   CONSTANT INT II_TOP_REMAIN = 80
   // 所有TASKITEM在W_TASKBAR(bottom形式)
   // 里的 X , Y 坐标,及高度
   CONSTANT INT II_TASKITEM_XPOS = 8
   CONSTANT INT II_TASKITEM_YPOS = 9 //只对UO_EXITSYS
   CONSTANT INT II_TASKITEM_HEIGHT = 84

3. 移动w_taskbar的实现:
   新加了一个API函数 . 实现主要在uo_systaskbar的ue_lbuttondown里

4. 浮动功能的实现:
   据 is_float_pos的值判断的
   对ue_arrange_taskitem 加入了判断!从而根据is_float_pos的值排列taskitem

                         希望对大家有帮助:)       
                                                        brave_QQ  
                                                        2002-11-28  


下载地址

点击此处立即下载

下载说明

* 为了达到最快的下载速度,推荐使用网际快车下载本站软件。
* 请一定升级到最新版WinRAR才能正常解压本站提供的软件!
* 如果您发现下载链接错误,请点击报告错误谢谢!
* 站内提供的所有软件包含破解及注册码均是由网上搜集,若侵犯了你的版权利益,敬请来信通知我们!