qt5.2.1在linux下去除最大化和最小化按钮

?





1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

#include <QtGui/QGuiApplication>

#include <QDebug>

#include <QScreen>

#include "qtquick2applicationviewer.h"

int main(int
argc, char
*argv[])

{

    QGuiApplication app(argc, argv);

    QScreen *screen=app.screens()[0];

    int
width=screen->size().width();

    int
height=screen->size().height();

    QtQuick2ApplicationViewer viewer;

    viewer.setMainQmlFile(QStringLiteral("qml/untitled2/main.qml"));

    viewer.setMaximumSize(QSize(500,500));

    viewer.setMinimumSize(QSize(500,500));

    viewer.setFlags(Qt::WindowCloseButtonHint);//Qt::FramelessWindowHint |

    viewer.setPosition(width/2 - viewer.width()/2 , height/2 - viewer.height()/2 );

    viewer.show();

    return
app.exec();

}

viewer.setMaximumSize(QSize(500,500));

viewer.setMinimumSize(QSize(500,500));

viewer.setFlags(Qt::WindowCloseButtonHint);

只需要这三句就行,前两句是固定了这个窗口的大小。

经过实验发现,如果不固定窗口大小就直接设置viewer.setFlags(Qt::WindowCloseButtonHint);窗口还会显示最大化按钮(无最小化)

只有固定了窗口大小才行。

但是,如果单独只固定窗口大小,那连程序退出键都没有。

可能有更好的方法我没有发现

这是在linux上的,windows上我试过qt4.8.1的,可以直接通过setWindowFlags就能做到

qt5.2.1在linux下去除最大化和最小化按钮,码迷,mamicode.com

时间: 2024-10-19 13:38:19

qt5.2.1在linux下去除最大化和最小化按钮的相关文章

QDialog 添加最大化、最小化按钮和关闭按钮,并且要正常显示

在使用QDialog时,默认情况下只有“这是什么”和“关闭”按钮(不知道为什么QT要这么做),但是我们习惯有最大化和最小化按钮.本文介绍如何在该模式下如何设置. 新建一个QDialog工程,然后打开Dialog.cpp文件,在Dialog的构造函数里写入如下的代码即可: [cpp] view plain copy print? Qt::WindowFlags flags=Qt::Dialog; flags |=Qt::WindowMinMaxButtonsHint; flags |=Qt::Wi

如何去掉WinForm或者WPF的最大化和最小化按钮

博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:如何去掉WinForm或者WPF的最大化和最小化按钮.

删除或添加最大化、最小化按钮 - 回复 &quot;Tommy the CAT&quot; 的问题

本例效果图: 代码文件: unit Unit1; interface uses   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,   Dialogs, StdCtrls; type   TForm1 = class(TForm)     Button1: TButton;     Button2: TButton;     procedure Button1Click(Sender: TObj

Q窗口操作函数(窗口最大化,全屏,隐藏最大化最小化按钮)

//Qt主窗口没有最小化,最大化按钮且最大化显示  int main(int argc, char *argv[]) { QApplication a(argc, argv); TestQtForWinCE w; w.setWindowFlags(w.windowFlags()& ~Qt::WindowMaximizeButtonHint& ~Qt::WindowMinimizeButtonHint); w.showMaximized(); return a.exec(); } 这里的&q

自定义窗体的最大化,最小化,关闭功能

namespace 自定义窗体的最大化_最小化和关闭按钮 { partial class Form1 { /// <summary> /// 必需的设计器变量. /// </summary> private System.ComponentModel.IContainer components = null; /// <summary> /// 清理所有正在使用的资源. /// </summary> /// <param name="disp

(转)WPF中让窗体不显示最大化,最小化,关闭按钮

1.在WPF中如果不想让窗体显示最大化,最小化,以及关闭按钮的话,可以再窗体的属性面板设置 将ResizeMode=NoResize时,将不会显示最大化最小化,只有关闭按钮:如下图: 将ResizeMode=CanMinimize时,最大化按钮被禁用,但是还是会显示,不能按,最小化,关闭按钮正常显示: 将WindowStyle=None时,将不会显示出最大化,最小化,以及关闭按钮,周围的边框也不存在. 还有一种方式: WPF:窗体不显示或禁用最大化.最小化.关闭按钮.图标以及对话框显示

让程序界面最大化、最小化到任务栏上的消息

SendMessage(Handle,WM_SYSCOMMAND,SC_MINIMIZE,0);   //相当于点最小化按钮 (-) SendMessage(Handle,WM_SYSCOMMAND,SC_MANIMIZE,0); //相当于点击最大化按钮 (■)

C# WinForm 禁止最大化、最小化、双击标题栏、双击图标等操作

protected override void WndProc(ref Message m){ if (m.Msg==0x112) { switch ((int) m.WParam) { //禁止双击标题栏关闭窗体 case 0xF063: case 0xF093: m.WParam = IntPtr.Zero; break; //禁止拖拽标题栏还原窗体 case 0xF012: case 0xF010: m.WParam = IntPtr.Zero; break; //禁止双击标题栏 case

实例详细说明linux下去除重复行命令uniq

地址:http://blog.51yip.com/shell/1022.html 一,uniq干什么用的 文本中的重复行,基本上不是我们所要的,所以就要去除掉.linux下有其他命令可以去除重复行,但是我觉得uniq还是比较方便的一个.使用uniq的时候要注意以下二点 1,对文本操作时,它一般会和sort命令进行组合使用,因为uniq 不会检查重复的行,除非它们是相邻的行.如果您想先对输入排序,使用sort -u. 2,对文本操作时,若域中为先空字符(通常包括空格以及制表符),然后非空字符,域中