可伸缩的窗口

##

伸缩窗口的代码:

void CVbvbDlg::OnButton1() //伸缩窗口
{

    CString str;
    if(GetDlgItemText(IDC_BUTTON1,str),str=="收缩<<")
    {

        SetDlgItemText(IDC_BUTTON1,"扩展>>");
        SetWindowPos(NULL,0,0,rectSmall.Width(),rectSmall.Height(),SWP_NOMOVE | SWP_NOZORDER);
        //SetWindowPos()函数用于改变窗口的配置;
    }
    else
    {
        SetDlgItemText(IDC_BUTTON1,"收缩<<");
        SetWindowPos(NULL,0,0,rectLarge.Width(),rectLarge.Height(),SWP_NOMOVE | SWP_NOZORDER);
    }
}

初始化时获取伸缩窗口的尺寸:

    CRect rectSeparator;
    GetWindowRect((&rectLarge));

    GetDlgItem(IDC_RIGHT)->GetWindowRect((&rectSeparator));

    rectSmall.left=rectLarge.left;
    rectSmall.top=rectLarge.top;
    rectSmall.bottom=rectLarge.bottom;
    rectSmall.right=rectSeparator.left;

    SetWindowPos(NULL,0,0,rectSmall.Width(),rectSmall.Height(),SWP_NOMOVE | SWP_NOZORDER);
时间: 2024-12-18 06:44:23

可伸缩的窗口的相关文章

SLIDING WINDOW

简介 用一个可伸缩的窗口遍历字符串,时间复杂度大致为O(n).适用于“寻找符合某条件的最小子字符串”题型. 题目 链接 求某字符串T中含有某字符串S的所有字符的最小子字符串.如果不存在则返回"". 算法 用左右两个指针维护一个窗口. 将右指针右移,直至窗口满足条件,包含S中所有字符. 将左指针左移,直至窗口不再满足条件.此过程中每移动一次,都更新最小子字符串. 重复1.2两步. WHY IT WORKS 设想一个最naive的算法如何遍历T中的所有子字符串.以T中的每一个字符为子字符串

thrift框架总结,可伸缩的跨语言服务开发框架

thrift框架总结,可伸缩的跨语言服务开发框架 前言: 目前流行的服务调用方式有很多种,例如基于 SOAP 消息格式的 Web Service,基于 JSON 消息格式的 RESTful 服务等.其中所用到的数据传输方式包括 XML,JSON 等,然而 XML 相对体积太大,传输效率低,JSON 体积较小,新颖,但还不够完善.本文将介绍由 Facebook 开发的远程服务调用框架 Apache Thrift,它采用接口描述语言定义并创建服务,支持可扩展的跨语言服务开发,所包含的代码生成引擎可以

window.open新打开窗口与新开标签页

最近在使用window.open时忽略了一个细节问题:window.open新打开一个窗口,但是有时却是新打开一个窗口有时打开一个新标签页.虽然对一般的需求来说,这个两种情况都无所谓,但是对于那种有强烈区分的需求来说还是要注意的.那么怎么会出现这种不同的打开情况呢,这要从window.open方法的用法和不同浏览器来区分. 1.window.open的用法容易忽视的细节 window.open方法有三个参数: window.open(url, [name], [configuration]) 其

C语言调用WIN32 API教程之1创建窗口

本学习笔记基于VC++6.0开发环境,通过c语言编程语言,调用win32 API进行windows系统应用程序开发. 1,打开VC++6.0,点击 文件->新建->工程->Win32 Application 工程名填写example1,点击确定,选择 一个空工程,点击完成. 2,点击"新建文件" 按钮,新建一个空白文件,点击 文件->另存为 输入文件名example1.c 选择工作空间对应的文件夹,保存. 3,点击FileView,右击Source File,点

【转】Apache Thrift - 可伸缩的跨语言服务开发框架

Apache Thrift - 可伸缩的跨语言服务开发框架 Apache Thrift 是 Facebook 实现的一种高效的.支持多种编程语言的远程服务调用的框架.本文将从 Java 开发人员角度详细介绍 Apache Thrift 的架构.开发和部署,并且针对不同的传输协议和服务类型给出相应的 Java 实例,同时详细介绍 Thrift 异步客户端的实现,最后提出使用 Thrift 需要注意的事项. 12 评论 黄 晓军, 实习生, IBM 张 静, 软件工程师, IBM 张 凯, 高级软件

CSS盒子模型之CSS3可伸缩框属性(Flexible Box)

CSS盒子模型(下) 一.CSS3可伸缩框(Flexible Box) 可伸缩框属性(Flexible Box)是css3新添加的盒子模型属性,有人称之为弹性盒模型,它的出现打破了我们经常使用的浮动布局,实现垂直等高.水平均分.按比例划分等分布方式以及如何处理可用的空间.使该模型,可以很轻松的创建自适应浏览器窗口的流动布局或自适应字体大小的弹性布局.但是它有一定的局限性,在firefox.chrome这浏览器下需要使用它们的私有属性来定义:firefox(-moz).chrome(-webkit

GTK常用控件之窗口( GtkWindow )

窗口的创建: GtkWidget *gtk_window_new(GtkWindowType type); GtkWindowType是一个枚举,有两种情况: GTK_WINDOW_TOPLEVEL:顶层窗口,有边框 GTK_WINDOW_POPUP:   弹式窗口,没边框 返回值:窗口指针 标题的设置: void gtk_window_set_title( GtkWindow *window, const gchar *title); window:窗口 title:标题 控件最小大小的设置:

分割窗口QSplitter类

概述 分割窗口QSplitter类在应用程序中经常用到,它可以灵活分割窗口的布局,经常用在类似文件资源管理器的窗口设计中 在Qt开发中,QSplitter是比较常用到的,也就是分割窗口.并且窗口分割处也就是QSplitter的handle是可以随意拖动的.这样,每个窗口的大小就可以按照自己的需要进行调整.QSplitter可以容纳其他Widget,具有布局一样的特性,但是又可以动态调整,可以说是动态布局特性,其内部的Widget可以自由伸缩. QSplitter有两种:垂直和水平. enum O

Extjs——窗口

Ext中的窗口主要包括Ext.Window窗口和Ext.MessageBox对话框.          Ext.Window窗口 1.Ext.Window窗口的常用属性: 2.窗口分组: 窗口分组有Ext.WindowGroup类定义,该类包括bringToFront(),getActive(),hideAll(),sendToBack()等函数,可以用来操作分组中的窗口. <script type="text/javascript"> var i = 0; functio