怎样在pb里实现无标题栏

 我来答
huanglenzhi
推荐于2016-01-03 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
采纳数:117538 获赞数:517184
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。

向TA提问 私信TA
展开全部
  api解决:
  SetWindowLong(Handle, // 当前窗体句柄
  GWL_STYLE, // 表示当前是要设置新的窗体(普通)样式
  // 得到指定窗体信息
  GetWindowLong(Handle, GWL_STYLE)
  and (not WS_CAPTION)); // 去掉样式(s)中的“标题”样式

  具体
  FUNCTION long SetWindowLong(ulong hWnd, integer nIndex, ulong dwNewLong) library "user32.dll" ALIAS FOR "SetWindowLongA"
  Function long GetWindowLong (Long hwnd,Long nIndex) library "user32" Alias for "GetWindowLongA"
  //

  //GWL_STYLE=-16
  //WS_CAPTION=12582912
  SetWindowLong(handle(this),-16,GetWindowLong(handle(this),-16)+12582912 )

  上面是声明 下面的代码放在open事件中

  

  =======================================================================

  

  2. 如何使PB窗口总在最上层

  通过SetWindowPos函数吧窗口的显示层次修改为HWND_TOPMOST,就可以使指定窗口永远不会被其它窗口覆盖,该函数声明为:

  Function Long SetWindowPos(Long hwnd, Long ord, Long x, Long y, Long

  dx, Long dy, Long uflag) Library “user32.dll”

  参数1为要顶层显示的窗口句柄,参数2指定显示的层次,参数7为附加选项,其余

  参数指定窗口位置和大小,均可忽略。在窗口的Open或Activate事件中加入如下

  函数调用:

  SetWindowPos(Handle(This),-1,0,0,0,0,3)

  参数2取-1表示在最顶层显示窗口,取1表示在最底层显示;最后一个参数若取1,

  表示窗口大小保持不变,取2表示保持位置不变,因此,取3(=1+2)表示大小和

  位置均保持不变,取0表示将窗口的大小和位置改变为指定值。

  3. 显示或隐藏Windows的任务栏

  要显示或隐藏任务栏,首先要得到它的窗口句柄。任务栏是一个特殊的窗口,它

  的窗口类为:Shell_TrayWnd,没有标题,故只能用FindWindowEx函数来取得它的

  句柄:

  Function Long FindWindowEx(Long ph, Long ch, ref String cn, ref

  String wn) Library “user32.dll”

  Function Long ShowWindow(Long hWnd, Long nCmdShow) Library “user32.dll”

  用ShowWindow来显示或隐藏窗口,其第二个参数为0表示隐藏,为5表示显示:

  handle = FindWindowEx(0,0,” Shell_TrayWnd”,wn) //wn为空串

  ShowWindow(handle,0) //隐藏任务栏
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式