Visual Studio 技能:调整软件界面布局

专栏导航

本节文章分别属于《Win32 学习笔记》和《MFC 学习笔记》两个专栏,故划分为两个专栏导航。读者可以自行选择前往哪个专栏。

(一)WIn32 专栏导航

上一篇:Windows编程:在VS2019里面,调整代码字体大小

回到目录

下一篇:WIn32 笔记:本专栏课件

(二)MFC 专栏导航

上一篇:Windows编程:在VS2019里面,调整代码字体大小

回到目录

下一篇:MFC笔记:本专栏课件

本节前言

在之前的章节里,我们讲解了 VS2010 与 VS2019 的下载安装与基本使用方法。

本节,依然是来讲解 Visual Studio 的基本使用方法。我们要讲解的内容是,调整软件界面的布局。

首先呢,我们需要做一个准备工作。准备工作的内容是,大家首先新建一个解决方案。并添加一个源文件。不要编译它。

注意哦,不要编译,也就是不要执行【生成 -> 生成解决方案】菜单命令。

再强调一次,不要编译。

做好了这样的准备工作,我们开始进行正文的讲解。

一.    将某一窗口调整为浮动状态

一般地,在软件界面中,都会含有一个【解决方案资源管理器】窗口。本次呢,我们就以它为例,来演示调整软件界面布局的方法。

首先呢,我们来找到这一窗口的标签位置,如下图所示。

图1

在图1里面,由红色框线所示,写着窗口名称的部分,就是一个窗口的标签。我们可以用鼠标拖动一个标签。

我们用鼠标拖动【解决方案资源管理器】窗口的标签时,暂时不松开鼠标,并且让鼠标指针停在代码编辑区域中,此时,代码编辑区域里面会出现一个十字架,如下图所示。

图2

图3

此时,你可以松开鼠标了。

当我们在拖动一个窗口的标签时,若是鼠标指针没有落在十字架的区域,然后松开鼠标,则窗口会变为浮动状态。

这里所说的十字架区域,不是指十字架所在的矩形区域,而是指十字架形状的内部区域。也就是,假定,鼠标指针落在了十字架所在的矩形区域,但是,它是位于十字架形状的左上方的空白区域,然后你松开鼠标,则窗口会变为浮动状态。右上方,左下方,右下方,同样会使得窗口变为浮动状态。

当然了,如果拖动某一个窗口的标签时,鼠标指针本身就位于十字架所在的外接矩形区域之外,则窗口更是会变为浮动状态了。

接下来,我们尝试着让【解决方案资源管理器】窗口变为浮动状态。方法是,拖动【解决方案资源管理器】窗口的标签,将鼠标指针移动到十字架区域之外,然后松开鼠标,则原本停靠在一边的【解决方案资源管理器】窗口会变为浮动状态,如下图所示。

图4

在【解决方案资源管理器】窗口处于浮动状态以后,我们来调整一下这个窗口的大小,使其处于较小的状态,结果如下图所示。

图5

到了这里,将窗口由停靠状态转为浮动状态,我们就讲完了。

二.    十字架形状

我们来看一看十字架形状。

图3副本

在这个十字架内部,有九个区域,使我们需要重点关注的区域。

在十字架的中间,有一个橙色矩形,这是一个区域。如下图的红色框线区域所示。

十字架中间

在中间橙色矩形的左边,有两个小矩形区域。最左边和次左边的小矩形区域,分别如下图的红色框线所示。

十字架最左

十字架次左

在中间橙色矩形的右边,有两个小矩形区域。最右边和次右边的小矩形区域,分别如下图的红色框线所示。

十字架最右

十字架次右

在中间橙色矩形的上边,有两个小矩形区域。最上边和次上边的小矩形区域,分别如下图的红色框线所示。

十字架最上

十字架次上

在中间橙色矩形的下边,有两个小矩形区域。最下边和次下边的小矩形区域,分别如下图的红色框线所示。

十字架最下

十字架次下

到这里,我们就讲完了十字架内部的九个区域。

三.    重置窗口布局

在讲解调整窗口布局的开始,我们先来讲解重置窗口布局。

为啥先讲重置窗口布局呢?

因为在练习的时候,有可能,我们会将窗口布局给搞乱。为此,我们需要先了解将窗口布局恢复为初始布局的方法,这样一来,即使我们自己把窗口布局给搞乱了,也可以方便地回归初始状态。

我们依次点选【窗口】,【重置窗口布局】菜单命令,就可以将软件界面布局恢复为初始状态。这一菜单命令如下图所示。

重置窗口布局菜单命令

了解了【重置窗口布局】菜单命令以后,我们往下学习。

四.    将拖动着的窗口停在静止窗口的一边

在本分节,我们暂时将代码编辑区域所在的窗口,称为静止窗口。我们本分节的任务是,拖动【解决方案资源管理器】窗口,使其停靠在静止窗口的一边。所谓的静止窗口,就是十字架形状所在的窗口。

这里所谓的一边,它是说,让拖动窗口与静止窗口共享静止窗口原本所占据的区域,并使得调整后的界面布局中,拖动窗口位于静止窗口的一边。

(一)将拖动窗口停在静止窗口的左边

拖动【解决方案资源管理器】窗口,并将鼠标指针移动到十字架形状的最左矩形或者是次矩形区域,然后松开鼠标,这样,【解决方案资源管理器】窗口就停在了代码编辑窗口的左边了。

如果鼠标松开前一刻,鼠标指针位于十字架形状区域的最左矩形区域,则结果如下图所示。

图6

在图6里面,原本由代码编辑窗口所占据的区域,此时由【解决方案资源管理器】窗口和代码编辑窗口共同占据着,并且呢,【解决方案资源管理器】窗口位于代码编辑窗口的左边,并且,【解决方案资源管理器】窗口所占据的,是一个较为狭窄的左右宽度。

如果鼠标松开前一刻,鼠标指针位于十字架形状区域的次左矩形区域,则结果如下图所示。

图7

在图7里面,原本由代码编辑窗口所占据的区域,此时由【解决方案资源管理器】窗口和代码编辑窗口共同占据着,并且呢,【解决方案资源管理器】窗口位于代码编辑窗口的左边,并且,【解决方案资源管理器】窗口所占据的,是一个宽一些的的左右宽度。

(二)将拖动窗口停在静止窗口的上边

拖动【解决方案资源管理器】窗口,并将鼠标指针移动到十字架形状的最上矩形或者是次上形区域,然后松开鼠标,这样,【解决方案资源管理器】窗口就停在了代码编辑窗口的上边了。

如果鼠标松开前一刻,鼠标指针位于十字架形状区域的最上矩形区域,则结果如下图所示。

图8

在图8里面,原本由代码编辑窗口所占据的区域,此时由【解决方案资源管理器】窗口和代码编辑窗口共同占据着,并且呢,【解决方案资源管理器】窗口位于代码编辑窗口的上边,并且,【解决方案资源管理器】窗口所占据的,是一个较窄的的上下高度。

如果鼠标松开前一刻,鼠标指针位于十字架形状区域的次上矩形区域,则结果如下图所示。

图9

在图9里面,原本由代码编辑窗口所占据的区域,此时由【解决方案资源管理器】窗口和代码编辑窗口共同占据着,并且呢,【解决方案资源管理器】窗口位于代码编辑窗口的上边,并且,【解决方案资源管理器】窗口所占据的,是一个大一些的的上下高度。

(三)将拖动窗口停在静止窗口的右边或下边

拖动【解决方案资源管理器】窗口,并将鼠标指针移动到十字架形状的最右矩形或者是次右形区域,然后松开鼠标,这样,【解决方案资源管理器】窗口就停在了代码编辑窗口的右边了。

拖动【解决方案资源管理器】窗口,并将鼠标指针移动到十字架形状的最下矩形或者是次下形区域,然后松开鼠标,这样,【解决方案资源管理器】窗口就停在了代码编辑窗口的下边了。

如果松开鼠标的前一刻,鼠标指针位于十字架矩形的最右或最下矩形区域,则【解决方案管理器】窗口会占据着一个较为窄小的位置。

如果松开鼠标的前一刻,鼠标指针位于十字架矩形的次右或次下矩形区域,则【解决方案管理器】窗口会占据着一个较大一些的位置。

(四)将【解决方案资源管理器】窗口放在最左边

方法,大家已经是知道了。用鼠标拖动【解决方案资源管理器】窗口,将鼠标指针移动到十字架形状的最左矩形区域,然后松开鼠标,则【解决方案资源管理器】窗口将会停在代码编辑窗口的左边且占据一个较为狭窄的位置。并且呢,现在的【解决方案资源管理器】窗口与代码编辑窗口,它们是共享着原来的代码编辑窗口所在的区域。

五.    让拖动窗口的标签成为静止窗口中的一个选项卡

在本分节,我们依然将代码编辑窗口称为静止窗口。而将【解决方案资源管理器】窗口视为拖动窗口。

接下来,我们来讲一讲,将【解决方案资源管理器】窗口的标签变为代码编辑窗口中的一个选项卡的方法、

方法一

拖动【解决方案资源管理器】窗口,并将鼠标指针移动到十字架形状的中间矩形区域,然后松开鼠标,这样,【解决方案资源管理器】窗口会与代码编辑窗口共享同一个区域。并且,【解决方案资源管理器】窗口的标签会成为原有的代码编辑窗口中的一个选项卡,如下图所示。

图10

本方法中的【Git更改】选项卡,我们点击一下这个选项卡中的叉号,以关闭它,如下图所示。

图11

如图11所示,此时,只剩下了【解决方案资源管理器】和【main.c】两个选项卡。在这个基础上,我们来学习方法二里面的方法。

方法二

首先呢,我们来作一个准备工作,那就是拖动【解决方案资源管理器】的选项卡,使其变为一个浮动窗口,并调整其大小,结果如下图所示。

图12

以上为准备工作。接下来,我们来讲解方法二。

我们来拖动【解决方案资源管理器】的标签,将鼠标指针移动到代码编辑窗口的标签栏,并且确保此时的代码编辑窗口出现了蓝色透明,此刻,我们松开鼠标,则【解决方案资源管理器】窗口会与代码编辑窗口共享同一个位置,并且【解决方案资源管理器】窗口的标签会成为新窗口区域的一个选项卡或标签。过程如下图所示。

图13

图14

将【解决方案资源管理器】窗口放在最左边

将拖动窗口变为某一个窗口区域中的一个选项卡的方法,大家已经是知道了。

接下来,我们还是将【解决方案资源管理器】窗口放在最左边。使得在调整后的窗口里面,【解决方案资源管理器】窗口在左边,代码编辑窗口在右边,并且【解决方案资源管理器】窗口占据一个较为狭窄的区域。

方法是,首先将【解决方案资源管理器】窗口变为一个浮动窗口,并且调整其大小,使其成为一个很小的浮动窗口。

然后呢,用鼠标拖动【解决方案资源管理器】窗口的标签,将鼠标指针移动到十字架形状的最左矩形区域,然后松开鼠标,则【解决方案资源管理器】窗口将会停在代码编辑窗口的左边且占据一个较为狭窄的位置。并且呢,现在的【解决方案资源管理器】窗口与代码编辑窗口,它们是共享着原来的代码编辑窗口所在的区域。

结果如下图所示。

图15

六.    调整临近的窗口的边界

在图15里面,在【解决方案资源管理器】窗口和代码编辑窗口的交界,有一个竖直的粗的蓝色线条,如下图所示。

图16

如图16 所示,其中的红色框线标注出来了一个蓝色的竖直粗线条。

这个交界处的蓝色粗线条,别管它是竖直的,还是水平,它都是可以拖动的。图16中的交界处的蓝色粗线条,它是竖直的。我们用鼠标拖动它,向右边拖动一段距离,然后松开鼠标。这样一来,【解决方案资源管理器窗口】就变宽了。如下图所示。

图17

在图17的基础上,我们再来拖动这个交界处的蓝色粗线条,向左边拖动一段距离,然后松开鼠标。这样一来,【解决方案资源管理器窗口】就变窄了。如下图所示。

图18

七.    静止窗口与十字架

我们当前的界面,如下图所示。

图19

在图19 这个界面里,【解决方案资源管理器】窗口与代码编辑窗口分居左右两边,且【解决方案资源管理器】窗口很窄。

(一)准备工作

接下来,我们给界面增加一个窗口。依次点击【视图】,【工具箱】,菜单命令界面如下图所示。

图20

执行了命令以后,会出现工具箱窗口。拖动它,使其变为一个浮动窗口,并调整其大小,使其变为一个较小的浮动窗口,结果如下图所示。

图21

以上为准备工作。

(二)将【工具箱】窗口放在【解决方案资源管理器】窗口的下边

拖动【工具箱】窗口的标签,将鼠标指针移动到【解决方案资源管理器】窗口所在区域,确保十字架形状位于【解决方案资源管理器】窗口里面,暂时不松开鼠标。继续移动鼠标指针,移动到十字架形状的最下矩形区域,然后松开鼠标。结果如下图所示。

图22

如图22 所示,【工具箱】窗口位于【解决方案资源管理器】窗口的下方。并且现在的【工具箱】窗口与【解决方案资源管理器】窗口共享原【解决方案资源管理器】窗口所在的位置。

(三)将【工具箱】窗口放在代码编辑窗口的下边

首先,我们来做准备工作。

拖动【工具箱】窗口的标签,使其变为一个浮动窗口,并调整其窗口大小,使其变为一个较小的浮动窗口,如下图所示。

图23

至此,准备工作已完成。我们来讲本小节的内容。

拖动【工具箱】窗口的标签,将鼠标指针移动到代码编辑窗口所在区域,确保十字架形状位于代码编辑窗口里面,暂时不松开鼠标。继续移动鼠标指针,移动到十字架形状的最下矩形区域,然后松开鼠标。结果如下图所示。

图24

如图24 所示,【工具箱】窗口位于代码编辑窗口的下方。并且现在的【工具箱】窗口与代码编辑窗口共享原代码编辑窗口所在的位置。

(四)关闭【工具箱】窗口

【工具箱】窗口是一个很有用的窗口。在我们的教程里,我们以后去讲解对话框的章节的时候,会使用【工具箱】窗口中的东西来搭建自定义的对话框界面。此刻,我们有这样的一个印象就可以了。暂时不需要深究。

本节,我们先将【工具箱】窗口给关闭掉。

首先呢,还是来作准备工作。

拖动【工具箱】窗口的标签,使其变为一个浮动窗口,并调整其窗口大小,使其变为一个较小的浮动窗口,如下图所示。

图25

在【工具箱】窗口的标签栏的右边,有一个叉号按钮,如下图所示。

图26

点击图26 的红色框线所示的叉号按钮,结果如下图所示。

图27

到了这里,调整 Visual Studio 软件界面布局的方法,我就算是讲完了。

关于调整软件界面布局的命令,其实还有一些。比如,在【窗口】菜单的下面,有着【管理窗口布局】,【保存窗口布局】和【应用窗口布局】命令,这三个命令,我就不讲了。有兴趣,你自己来探索它们的使用方法吧。

不过,我还是可以略微说明一下。【窗口 -> 保存窗口布局】菜单命令,用于将我们所调整的某一窗口布局,给保存下来。我们可以保存很多个窗口布局,以供特定的场合来使用它们。

在我们保存了一些个窗口布局以后,我们可以通过执行【窗口 -> 应用窗口布局】菜单命令,来应用我们所保存过的某一窗口布局。

管理窗口布局,没研究过,估计是可以删除某一个窗口布局,或者重命名窗口布局吧。

关于【窗口】菜单下面的【管理窗口布局】,【保存窗口布局】和【应用窗口布局】三个子菜单命令,你自己研究吧。

结束语

到这里,调整窗口布局的方法,我们就算是讲完了。

大家多练习练习吧。

 专栏导航

本节文章分别属于《Win32 学习笔记》和《MFC 学习笔记》两个专栏,故划分为两个专栏导航。读者可以自行选择前往哪个专栏。

(一)WIn32 专栏导航

上一篇:Windows编程:在VS2019里面,调整代码字体大小

回到目录

下一篇:WIn32 笔记:本专栏课件

(二)MFC 专栏导航

上一篇:Windows编程:在VS2019里面,调整代码字体大小

回到目录

下一篇:MFC笔记:本专栏课件

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/80831.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 热题 100_最小路径和(92_64_中等_C++)(多维动态规划)

LeetCode 热题 100_最小路径和(92_64) 题目描述:输入输出样例:题解:解题思路:思路一(多维动态规划): 代码实现代码实现(思路一(多维动态规划&…

Sql刷题日志(day6)

一、笔试 1、insert ignore:在插入数据时忽略主键冲突或其他唯一性约束冲突。 如果插入的记录会导致主键冲突(如 actor_id 已存在),该语句不会报错,而是直接忽略插入操作 语法: INSERT IGNORE INTO tab…

Java多线程入门案例详解:继承Thread类实现线程

本文通过一个简单案例,讲解如何通过继承 Thread 类来实现多线程程序,并详细分析了代码结构与运行机制。 一、前言 在 Java 中,实现多线程主要有两种方式: 继承 Thread 类 实现 Runnable 接口 本文以继承 Thread 类为例&#x…

Netty在线客服系统落地方案

本文不讲然后代码方面的东西,只聊方案!! 这方案基于 Spring Boot 2.6、Netty、MyBatis Plus、Redis 构建的一套支持 单体应用 的在线客服系统。 系统支持客户自由与后台客服实时聊天、客服未在线钉钉提醒通知客服、消息已读未读标记、消息已…

SDK游戏盾、高防IP、高防CDN三者的区别与选型指南

在网络安全防护领域,SDK游戏盾、高防IP和高防CDN是常见的解决方案,但各自的功能定位、技术实现和适用场景差异显著。本文将通过对比核心差异,帮助您快速理解三者特点并选择适合的防护方案。 一、核心功能定位 SDK游戏盾 功能核心&#xff1a…

GRPO有什么缺点,如何改进?

一、GRPO的核心原理与设计目标 Group Relative Policy Optimization(GRPO)是DeepSeek团队提出的一种强化学习算法,旨在解决传统PPO(Proximal Policy Optimization)在大语言模型(LLM)训练中的资源消耗问题。其核心创新在于 通过组内相对奖励替代价值函数(Critic Model)…

登高架设作业指的是什么?有什么安全操作规程?

登高架设作业是指在高处从事脚手架、跨越架架设或拆除的作业。具体包括以下方面: 脚手架作业 搭建各类脚手架,如落地式脚手架、悬挑式脚手架、附着式升降脚手架等,为建筑施工、设备安装、高处维修等作业提供安全稳定的工作平台。对脚手架进行…

前端实现商品放大镜效果(Vue3完整实现)

前端实现商品放大镜效果(Vue3完整实现) 前言 在电商类项目中,商品图片的细节展示至关重要。放大镜效果能显著提升用户体验,允许用户在不跳转页面的情况下查看高清细节。本文将基于Vue3实现一个高性能的放大镜组件,完整…

【C++11特性】Lambda表达式(匿名函数)

一、函数对象 在C中,我们把所有能当作函数使用的对象当作函数对象。 一般来说,如果我们列出一个对象,而它的后面又跟有由花括号包裹的参数列表,就像fun(arg1, arg2, …),这个对象就被称为函数对象。函数对象大致可分为…

大模型在肝硬化腹水风险预测及临床方案制定中的应用研究

目录 一、引言 1.1 研究背景与意义 1.2 研究目的与创新点 1.3 研究方法与数据来源 二、肝硬化及大模型相关理论基础 2.1 肝硬化概述 2.2 大模型技术原理 2.3 大模型在医疗领域的应用现状 三、大模型预测肝硬化腹水术前风险 3.1 术前风险因素分析 3.2 大模型预测术前…

MCP:如何通过模型控制推理助力AI模型实现“深度思考”?

MCP:如何通过模型控制推理助力AI模型实现“深度思考”? | Echo_Wish专栏 大家好,我是Echo_Wish,一个在人工智能和Python领域深耕的技术达人。今天咱们聊一个相对前沿的技术话题——MCP (Model Control Propagation),它是如何帮助AI模型“深度思考”,让机器变得更加智能的…

c++初识

C 基础入门 本人写了很多c的服务器和客户端代码,这篇文章主要是想帮助初学者快速入门c.这样就能快速阅读我的源码,其实不难c只是比c多了些特性,其实不难,你们就理解为有更多的方式修改函数和调用函数的方式和重写函数 C 基础入门…

JVM 生产环境问题定位与解决实战(八):实战篇——正则表达式回溯引发的CPU 100%

本文已收录于《JVM生产环境问题定位与解决实战》专栏,完整系列见文末目录 1. 引言 在上一篇文章中,我们深入剖析了OSSClient泄漏引发的FullGC风暴全链路排查过程。本文聚焦另一个经典线上问题——正则表达式回溯导致的CPU 100%。在Java应用中&#xff0…

100天精通Python挑战总览 | 零基础到应用实战!

目录 ✨ 为什么发起100天挑战?✨整体学习路线规划第一阶段|基础篇(第1天 - 第50天)第二阶段|应用篇(第51天 - 第100天)Web开发篇爬虫篇数据分析篇AI入门篇 🏆为什么这么划分&#xf…

C++编译之(5)-cmake/CMakeLists.txt的编译使用教程

C++编译之(5)-cmake/CMakeLists.txt的编译使用教程 上一节,点这里 1、如何查看cmake的配置参数 那么如何查看当前配置的参数呢,我们可以使用-L参数 cmake .. -L # cmake .. -LAH完全使用命令行,则可以通过多次重复使用cmake … -DOPTION1=ON -D OPTION2=ON配置制定选项;并…

2025五一杯数学建模竞赛思路助攻预定

2025五一杯数学建模竞赛思路助攻预定(思路内容见文末名片) 一、概况 数学建模竞赛是一项模拟面对实际问题寻求解决方案的活动,是一次近似 于“真刀真枪”的创新探索性实践训练。在丰富并活跃学生课外生活活动的同 时,数学建模竞…

2025年绿色材料与制造技术国际学术会议(GMMT 2025)

重要信息 时间:2025年6月23-25日(英国时间) 地点:英国剑桥线下会场中国线上分会场 官网:www.icgmmt.com 部分 征稿主题 可生物降解材料垃圾和废物的资源化绿色涂料与涂层 生物基聚合物的合成与应用 自然纤维增强复…

鸿蒙NEXT开发正则工具类RegexUtil(ArkTs)

import { FormatUtil } from ./FormatUtil;/*** 正则工具类* author CSDN-鸿蒙布道师* since 2025/04/27*/ export class RegexUtil {/*** 英文字母、数字和下划线*/static readonly REG_GENERAL "^\\w$";/*** 数字*/static readonly REG_NUMBERS "^\\d$"…

Spring系列六:JdbcTemplate

JdbcTemplate 🦒看一个实际需求🦒官方文档🦒基本介绍🦒使用实例📕需求说明📕代码演示 🦒看一个实际需求 实际需求: 如果程序员就希望使用spring框架来做项目, spring框架如何处理对数据库的操作…

来聊聊JVM中安全点的概念

文章目录 写在文章开头详解safepoint基本概念什么是安全点?为什么需要安全点JVM如何让线程跑到最近的安全点线程什么时候需要进入安全点JVM如何保证线程高效进入安全点如何设置安全点用一次GC解释基于安全点的STW实践-基于主线程休眠了解安全点的工作过程代码示例基于日志印证…