精华内容
下载资源
问答
  • 五:Windows的图形用户界面

    千次阅读 2016-08-01 16:36:36
    基本概念窗口窗口是 Windows 图形用户界面最重要的元素。任务图形用户界面的应用程序都需要开窗口。一个典型的窗口包括多个组成部分。最上一栏是标题栏,标题栏包括应用程序图标和窗口标题,标题栏的右边是一组按钮...

    基本概念

    窗口

    窗口是 Windows 图形用户界面最重要的元素。任务图形用户界面的应用程序都需要开窗口。一个典型的窗口包括多个组成部分。最上一栏是标题栏,标题栏包括应用程序图标和窗口标题,标题栏的右边是一组按钮。标题栏下方放置菜单的部分,称为菜单栏。中间空白部分是客户区,一般用于放置窗口的功能控件、显示内容等,也是程序设计时需要主要处理的内容。

    窗口类

    在应用程序开发时,需要注意每一个窗口都属性一个窗口类( Window Class)。每一种窗口类具有对固定的用户输入的处理模式,第一类窗口具有相同的菜单项、背景、图标、鼠标指针样子和窗口消息处理函数。应用程序在创建窗口前,需向系统注册窗口类,或使用系统已经定义好的窗口类(一些公用的控件所需的窗口类已经由系统定义好了)。在注册窗口类时,需指定窗口消息的处理函数。

    消息和消息处理函数

    Windows 系统是消息(Message)驱动的。消息在 Windows 处理用户交互的过程中具有重要作用。当用户操作输入设备,产生硬件中断后,系统内核会得到这些硬件中断,硬件在系统中经过复杂的运算和处理最终变成消息。消息被系统发送给指定窗口。所有的对用户界面的操作都会产生消息,包括鼠标单击、按钮、菜单选择、窗口创建、窗口移动等。Windows 消息种类很多。在创建窗口时,需指定窗口所属的窗口类,前面提到,每一个窗口类都对应一个消息处理函数,因此每一个窗口都具有自己的消息处理函数。程序员在开发窗口应用程序时,需编写窗口消息处理函数消息处理函数是一个回调( Call Back)函数此函数并不是由应用程序调用,而是由系统调用的。应用程序向系统注册了窗口类,创建了窗口,系统在消息产生后,需要窗口消息处理函数来处理时,调用窗口所对应的消息处理函数。
    消息处理函数的功能一般是相应用户在窗口上的操作和输入。比如用户在菜单中选中了一个菜单项,那么就会产生一个消息。然后,窗口的消息处理函数就会被调用。消息处理函数被调用后根据消息的类型和参数判断应该如何处理用户的输入,然后进行相关的处理。这就是 Windows 窗口程序对用户输入的处理模式。
    当然并不是只有用户的输入才会产生消息。在很多情况下,一些随机发生的事件也会产生消息,这些事件可能会对窗口应用程序的运行产生影响,比如系统关机、外设插入、计时器计时到达等。窗口处理函数需根据情况处理所需处理的消息。

    控件

    控件是用户界面开发的重要内容。所谓控件,实际是一种特殊的窗口。Windows 系统将一些常用的窗口模式定义为控件。应用程序可以直接使用这些控件而不需要重新定义。控件有特定的窗口样式、显示设置和消息处理过程。使用控件时不再需要做消息的处理。系统已经为每个控件定义了特定的消息处理模式。比如 Edit 控件就会在将鼠标样式变为一个竖线;在用户输入了文字后,会将文字显示在特定的位置;当用户在按住鼠标右键移动时会选中框住的文字,当用户单击右键时会显示特定的菜单,当用户选择菜单项后,进行的操作也是固定的。这些都是一个控件事先定义好的处理模式。可以说控件是模式化了的窗口。达到了方便用户使用的目的。

    资源

    资源是应用程序在运行中可能会使用到的一些数据。资源包括图标、位图、菜单等。在程序设计时,开发人员可以在资源脚本(.rc)中配置资源,在程序构建时,资源编译器会将资源编译为资源文件(.res),然后由链接器将资源链接到可执行文件中。在程序运行时使用这些资源。

    展开全文
  • windows编程(设计用户界面

    千次阅读 2018-11-06 20:23:13
    开发平台:codeblocks win32 GUI 功能说明:首先,可以...并输出破解次数。 界面展示: func.c: #include "func.h" void respond_password_generated() { srand((unsigned)time(0)); int...

    开发平台:codeblocks win32 GUI

    功能说明:首先,可以自动生成6位口令,然后点击暴力破解按钮,开始对自动生成的口令进行暴力破解。并输出破解次数。

    界面展示:

    func.c:
    
    #include "func.h"
    void respond_password_generated()
    {
        srand((unsigned)time(0));
        int n[6] = {0};
        int i;
        for(i=0; i<6; i++)
        {
            n[i] = rand()%10;
            strr[i] = n[i]+'0';
        }
    }
    int respond_violence(int c)
    {
        c = 0;
    	char b[7];
        int i, j;
        for(i=0; i<=999999; i++)
        {
        	int k = i;
            for(j=5; j>=0; j--)
            {
                b[j] = k%10+'0';
                k/=10;
            }
            if(!strcmp(strr, b))
            {
            	break;
    		}
    		c++;
        }
        return c;
    }
    main.c:
    
    #include <windows.h>
    #include "func.h"
    #define num 2
    /*
    Windows程序是事件驱动的,对于一个窗口,它的大部分例行维护是由系统维护的。
    每个窗口都有一个消息处理函数。
    在消息处理函数中,对传入的消息进行处理。系统内还有它自己的缺省消息处理函数。
    客户写一个消息处理函数,在窗口建立前,将消息处理函数与窗口关联。这样,每当有消息产生时,
    就会去调用这个消息处理函数。通常情况下,客户都不会处理全部的消息,而是只处理自己感兴趣的消息,
    其他的,则送回到系统的缺省消息处理函数中去。
    系统会将针对这个程序的消息依次放到程序的“消息队列”中,由程序自己依次取出消息,
    在分发到对应的窗口中去。因此,建立窗口后,将进入一个循环。在循环中,取出消息、派发消息,
    循环往复,直到取得的消息是退出消息。循环退出后,程序即结束。
    */
    //消息处理函数 。参数:窗口句柄,消息,消息参数,消息参数
    LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
    
    /*
    hinstance - 该参数为Windows 为应用程序生成的实例句柄。实例是用来跟踪资源的指针。
    hprevinstance 当前已不再使用该参数,之前用来跟踪应用程序的前一个实例,即程序的父亲的程序实例。
    ipcmdline - 一个以NULL结尾的字符串,类似于标准main(int argc,char** argv)中的命令行参数,
    但没有单独的argc来指示命令行参数数量。
    ncmdshow—— 最后一个参数是启动期间传递给应用程序的一个整数,指出如何打开程序的窗口。
    事实上,基本没用,但ncmdshow的值一般会用于ShowWindows()中使用,用来设置新建子窗口的形式。
    */
    
    int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
    {
            static TCHAR szAppName[] = TEXT("MyWindows");//窗口类名称
            HWND hwnd;
            MSG msg;
    
            //定制"窗口类"结构
            WNDCLASS wndclass;
            wndclass.style = CS_HREDRAW | CS_VREDRAW;
            wndclass.lpfnWndProc = WndProc;//关联消息处理函数
            wndclass.cbClsExtra = 0;
            wndclass.cbWndExtra = 0;
            wndclass.hInstance = hInstance;
            wndclass.hIcon = LoadIcon(NULL, IDI_APPLICATION);//图标
            wndclass.hCursor = LoadCursor(NULL, IDC_ARROW);//光标
            wndclass.hbrBackground = (HBRUSH)(COLOR_BTNFACE + 1);//画刷
            //将客户区的背景颜色改成和按钮一样  +1是为了防止出现NULL
            wndclass.lpszMenuName = NULL;
            wndclass.lpszClassName = szAppName;
    
            if (!RegisterClass(&wndclass))
            {
                    MessageBox(NULL, TEXT("这个程序需要在 Windows NT 才能执行!"), szAppName, MB_ICONERROR);
                    return 0;
            }
            //建立窗口
            hwnd = CreateWindow(szAppName,//窗口类名称
                    TEXT("PasswordBreak"),//窗口标题
                    WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU,//窗口风格
    
                    /*三个参数的含义:
                    产生一个层叠的窗口,一个层叠的窗口有一个标题条和一个边框,与 WS_TILED 风格相同
                    创建一个有标题框的窗口(包含了 WS_BODER 风格)
                    创建一个在标题条上带有窗口菜单的窗口,必须同时设定 WS_CAPTION 风格
                    */
    
                    CW_USEDEFAULT,
                    CW_USEDEFAULT,
                    CW_USEDEFAULT,
                    CW_USEDEFAULT,
                    NULL,
                    NULL,
                    hInstance,
                    NULL);
    
            ShowWindow(hwnd, iCmdShow);
            UpdateWindow(hwnd);
    
            while (GetMessage(&msg, NULL, 0, 0))
            {
                    TranslateMessage(&msg);//转换消息
                    DispatchMessage(&msg);//派发消息
            }
    
            return msg.wParam;
    }
    
    LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
    {
            HDC hdc;
            PAINTSTRUCT ps;
            RECT rect;
            TCHAR *str[num] = {TEXT("自动生成六位口令"), TEXT("暴力破解六位口令"), TEXT("音乐")};
            static int cxchar, cychar;
            static HWND hwndButton[num];
            //存放子窗口的句柄
            int i, id, co;
    
            static int winner = -1, flag = 0, Count = 0;//标记哪个选项被选中
    
            switch (message)
            {
            case WM_CREATE:
            cxchar = LOWORD(GetDialogBaseUnits());
            cychar = HIWORD(GetDialogBaseUnits());
            /*
            获取字体的横/纵坐标:返回值是一个8位16进制数,高4位存放字体的高度,低4位存放字体的宽度,
            可以通过以下语句了获取字体的高和宽
            GetDialogBaseUnits函数返回的水平基本单位同系统字体中字符以像素为单位的平均宽度相等;
            垂直基本单位同系统字体中字符的以像素为单位的平均高度相等;
            对于一个没有使用系统字体的对话框基本单位相等于对话框字体字符以像素为单位的平均宽度和平均高度。
            */
            GetWindowRect(hwnd, &rect);
            MoveWindow(hwnd, rect.left, rect.top, 40*cxchar, 20*cychar, TRUE);
            /*
    hWnd是窗口的句柄。
    X是窗口在X轴的位置。
    Y是窗口在Y辆的位置。
    nWidth是窗口的宽度。
    nHeight是窗口的高度。
    bRepaint是设置是否重画窗口和父窗口。
    当设置为TRUE时,就进行重画。当设置为FALSE时,
    就不进行重画,需要手功进行更新指定的区域。
            */
            for(i=0; i<num; i++)
            {
                hwndButton[i] = CreateWindow(TEXT("button"), str[i],
                BS_AUTORADIOBUTTON | WS_CHILD | WS_VISIBLE,
                8*cxchar, cychar*(2 + 3*i),20*cxchar, 7*cychar/4,
                hwnd, (HMENU)i, ((LPCREATESTRUCT)lParam)->hInstance, NULL);
            }
    
                CreateWindow(TEXT("button"), TEXT("选项"),
                BS_GROUPBOX | WS_CHILD | WS_VISIBLE,
                3*cxchar, cychar/10,30*cxchar, 37*cychar/4,
                hwnd, (HMENU)(num+1), ((LPCREATESTRUCT)lParam)->hInstance, NULL);
    
                CreateWindow(TEXT("button"), TEXT("提交"),
                BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE,
                5*cxchar, 13*cychar,
                //按钮的上下位置
                9*cxchar, 9*cychar/4,
                //按钮的长和宽
                hwnd, (HMENU)(num+2), ((LPCREATESTRUCT)lParam)->hInstance, NULL);
                CreateWindow(TEXT("button"), TEXT("破解次数"),
                BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE,
                20*cxchar, 13*cychar,
                //按钮的左右和上下位置
                9*cxchar, 9*cychar/4,
                //按钮的长和宽
                hwnd, (HMENU)(num+3), ((LPCREATESTRUCT)lParam)->hInstance, NULL);
            return 0;
            case WM_COMMAND:
                id = LOWORD(wParam);//获取子窗口控件的id
                 if(id < num)
                 {
                     winner = id;//选中哪个选项
                 }
                 switch(id)
                 {
                 case num+2://如果点了提交的按钮
                    if(winner==-1)
                    {
                        MessageBox(hwnd, TEXT("没有选中任何选项!"), TEXT("提示"), MB_OK);
                    }
                    else if(winner == 0)//如果点了自动生成6位口令
                    {
                        flag = 1;
                        respond_password_generated();
                       CHAR szdemo[20] = "\0";
                       sprintf(szdemo, TEXT("%s %s"), TEXT("生成的口令是:"), strr);
                    MessageBox(hwnd, TEXT(szdemo), TEXT("提示"), MB_OK);
                    }
                    else if(winner == 1)
                    {
                        if(flag)
                        {
                        respond_violence();
                        MessageBox(hwnd, TEXT("口令已破解"), TEXT("提示:"), MB_OK);
                        }
                        else
                        {
                             MessageBox(hwnd, TEXT("未生成口令!"), TEXT("提示:"), MB_OK);
                        }
                    }
                    break;
                 case num+3://如果点了显示破解次数的按钮
                     {
                         co = respond_violence(Count);
                        // printf("%d\n", co);
                         //printf("%s\n", strr);
                    CHAR szdemo1[40] = "\0";
                    sprintf(szdemo1, TEXT("%s %d"), TEXT("尝试的次数为:"), co);
                    MessageBox(hwnd, TEXT(szdemo1), TEXT("提示"), MB_OK);
                    break;
                     }
                 }
            return 0;
    
    //        case WM_PAINT:
    //                hdc = BeginPaint(hwnd, &ps);
    //                GetClientRect(hwnd, &rect);
    //
    //                EndPaint(hwnd, &ps);
    //                return 0;
    
    //        case WM_LBUTTONDOWN:
                MessageBox(hwnd, TEXT("哎呀~我被按了一下~"), TEXT("好舒服~"), MB_OK);
    //            return 0;
    
            case WM_DESTROY:
                    PostQuitMessage(0);
                    //当用户关闭窗口,窗口销毁,程序需结束,发退出消息,以退出消息循环
                    return 0;
            }
            return DefWindowProc(hwnd, message, wParam, lParam);
    }
    func.h:
    #ifndef FUNC_H_INCLUDED
    #define FUNC_H_INCLUDED
    
    #include<stdio.h>
    #include <stdlib.h>
    #include <time.h>
    #include <string.h>
    
    
    char strr[10];//这里面存的是自动生成的6位口令
    
    //static int Count = 0;//这是要统计破解的次数
    void respond_password_generated();
    int respond_violence();
    
    
    #endif // FUNC_H_INCLUDED
    

     

    展开全文
  • 什么是GUI(图形用户界面)?

    千次阅读 2020-10-05 18:50:37
    GUI或图形用户界面是提供给用户,超级用户或管理员的界面,以便以简单的方式与系统进行交互。 GUI通常由单击或单击组件组成,例如按钮,文本框,滑块,图片等。 GUI历史 (GUI History) The GUI is developed at the...

    GUI or Graphical User Interface is an interface provided to the user, superuser, or administrator in order to interact with a system in an easy way. GUI generally consists of a single touch or click components like button, text box, slider, picture, etc.

    GUI或图形用户界面是提供给用户,超级用户或管理员的界面,以便以简单的方式与系统进行交互。 GUI通常由单击或单击组件组成,例如按钮,文本框,滑块,图片等。

    GUI历史 (GUI History)

    The GUI is developed at the end of the 1970s and before the GUI there was CLI or Command Line Interface which is a geeky interface generally used by technical or professional persons. The first commercially available GUI is developed by the Xerox named as PARC.  It is released with the named Xerox 8010 Information System which is released in 1981. After that Steve Jobs saw the GUI on a tour at Xerox. This is started Apple’s GUI based operating system for the personal computer named Macintosh which is released in 1984. After this release Windows also started the GUI based operating system development where GUI based for Windows 1.0 is released 1985.

    GUI是在1970年代末开发的,在GUI之前是CLI或命令行界面,这是技术人员或专业人员普遍使用的怪异界面。 Xerox开发了第一个可商用的GUI,名为PARC。 它与命名为Xerox 8010信息系统一起发布,该信息系统于1981年发布。此后,史蒂夫·乔布斯在施乐公司的一次巡回演出中看到了GUI。 这是1984年发布的名为Macintosh的个人计算机的基于Apple的Apple的基于GUI的操作系统。此版本之后,Windows还启动了基于GUI的操作系统开发,1985年发布了基于Windows 1.0的GUI。

    GUI组件 (GUI Components)

    GUI consist of different components. Not all of the components should exist in a GUI but in most cases, these components are used.

    GUI由不同的组件组成。 并非所有组件都应存在于GUI中,但在大多数情况下,将使用这些组件。

    • Window is one of the most popular components of a GUI. Windows generally used to contains multiple components of a GUI. The window also used as an interface for different applications as different windows.

      Window是GUI最受欢迎的组件之一。 Windows通常用于包含GUI的多个组件。 该窗口还用作不同应用程序的界面,就像不同的窗口一样。

    • Button is generally used to trigger an action like save, edit, start, stop some actions in a GUI.

      Button通常用于在GUI中触发诸如保存,编辑,启动,停止某些操作之类的操作。

    • Label is a text label that is used to provide information with text.

      Label是用于提供文本信息的文本标签。

    • TextBox is used to input some text information to the GUI and a very popular component.

      TextBox用于向GUI和非常流行的组件输入一些文本信息。

    • Slider is used to slide a pointer to set a specific value.

      Slider用于滑动指针以设置特定值。

    • Picture is another popular component that is used to show some pictures in a GUI.

      Picture是另一个流行的组件,用于在GUI中显示一些图片。

    • Video is a popular component of where different types of video can be shown.

      Video是可以显示不同类型视频的流行组件。

    • CheckBox is used to provide multiple options to check single or multiple of them.

      CheckBox用于提供多个选项以检查单个或多个。

    • Panel is a part of the screen which provides shortcuts or a list of something.

      Panel是屏幕的一部分,提供快捷方式或一系列内容。

    • Tab provides multiple screens in Windows which is very useful to put a lot of GUI components in a single window.

      Tab在Windows中提供了多个屏幕,这对于将多个GUI组件放在一个窗口中非常有用。

    • Icon is used to show some little picture.

      Icon用于显示一些小图片。

    • Mouse is hardware but very important for user input into a GUI.

      Mouse是硬件,但对于用户输入到GUI来说非常重要。

    • Keyboard is another hardware that provides input to the components like textbox.

      Keyboard是另一种为文本框等组件提供输入的硬件。

    • Menu provides some shortcuts in a window to open them.

      Menu在窗口中提供了一些快捷方式来打开它们。

    • Pointer is used to select and interact with the GUI components by using a mouse.

      Pointer用于通过鼠标选择GUI组件并与之交互。

    • Desktopis used in operating systems in order to provide the main screen to the user with different tools and GUI components like a menu, window, picture, etc.

      Desktop用于操作系统中,以便向用户提供具有不同工具和GUI组件(如菜单,窗口,图片等)的主屏幕。

    LEARN MORE  What Is Computer-Aided Design (CAD)?
    了解更多什么是计算机辅助设计(CAD)?

    GUI的优点 (Advantages of GUI)

    Before the GUI the Command Line Interface or simple CLI was the interaction way with a system or applications. With the development and usage of the GUI, the popularity of the computer systems hiked because it provides a lot of advantages. Here some advantages of GUI.

    在GUI之前,命令行界面或简单的CLI是与系统或应用程序的交互方式。 随着GUI的开发和使用,计算机系统的普及率上升了,因为它具有很多优点。 这里介绍了GUI的一些优点。

    • GUI is more human-friendly and eye-candy.

      GUI更加人性化和令人眼花can乱。
    • GUI provides easy access to the functions of the system and applications.

      GUI可轻松访问系统和应用程序的功能。
    • GUI can be used with very little knowledge which is helpful for novice users.

      使用GUI的知识很少,这对新手用户很有帮助。
    • GUI provides the visually rich output and information against CLI.

      GUI根据CLI提供了视觉效果丰富的输出和信息。

    GUI示例 (GUI Examples)

    Today a lot of operating systems, programs and applications has GUI. Here we will list different type of GUI’s about these.

    如今,许多操作系统,程序和应用程序都具有GUI。 在这里,我们将列出关于这些的不同类型的GUI。

    Google Chrome GUI
    Google Chrome GUI
    谷歌浏览器GUI
    • Google Chrome provides classical GUI components like tab, menu, button, picture etc.

      Google Chrome提供了经典的GUI组件,例如标签,菜单,按钮,图片等。
    Windows Server GUI
    Windows Server GUI
    Windows Server GUI
    • Windows Server GUI provides a Desktop experience to the users.

      Windows Server GUI为用户提供了桌面体验。
    Windows File Explorer GUI
    Windows File Explorer GUI
    Windows文件资源管理器GUI
    • Windows File Explorer GUI provides left panel to navigate with a pane to list file and folders

      Windows File Explorer GUI提供了左侧面板,可通过窗格进行导航以列出文件和文件夹
    7zip GUI
    7zip GUI
    7zip GUI

    GUI(图形用户界面)与CLI(命令行界面) (GUI (Graphical User Interface) vs CLI(Command Line Interface))

    Before the GUI there was CLI (Command Line Interface). They are very different from each other. Here will compare GUI vs CLI (Command Line Interface).

    在GUI之前有CLI(命令行界面)。 它们彼此非常不同。 这里将比较GUI和CLI(命令行界面)。

    • GUI provides Graphics where CLI provides generally a black screen with some text.

      GUI提供图形,其中CLI通常提供带有某些文本的黑屏。
    • GUI provides human-friendly interaction where CLI is like machine interaction.

      GUI提供了人机友好的交互方式,而CLI就像机器交互一样。
    • GUI is easy to use where CLI is hard to use.

      GUI易于使用,而CLI难以使用。
    • GUI can be used by novice users where CLI requires some expert knowledge.

      GUI需要一些专业知识的新手用户可以使用GUI。
    • GUI uses mouse clicks and some text input to input and interaction where CLI can only interact with text commands.

      GUI使用鼠标单击和一些文本输入来进行输入和交互,其中CLI只能与文本命令交互。

    Linux GUI (Linux GUI)

    Linux is an opensource and geeky operating system. Linux mainly started as a command-line based operating system which is mainly designed for experienced users. Over time it changed a lot and integrated different GUI components and tools like Desktop Managers. Linux provides the very same experience to Windows from a desktop point of view. Linux provides different graphical desktop environments like below.

    Linux是开源且令人讨厌的操作系统。 Linux主要是从基于命令行的操作系统开始的,该操作系统主要是为有经验的用户设计的。 随着时间的流逝,它发生了很大变化,并集成了不同的GUI组件和工具,例如桌面管理器。 从桌面的角度来看,Linux为Windows提供了相同的体验。 Linux提供了如下不同的图形桌面环境。

    • KDE

      KDE
    • Gnome

      侏儒
    • XFCE

      XFCE
    • LXDE

      LXDE
    • Unity

      统一
    LEARN MORE  Introduction To Bash Scripting
    了解更多Bash脚本介绍

    Windows GUI(Windows GUI)

    Windows is the most popular user-level operating system where its GUI makes it so popular. Windows provides very easy GUI experience for its users where children, elders, non-tech people can easily learn and use it. Windows mainly aimed to be used mostly with a mouse and some cases with a keyboard.

    Windows是最流行的用户级操作系统,其GUI使其变得如此流行。 Windows为用户提供了非常简单的GUI体验,儿童,长者和非技术人员都可以轻松地学习和使用Windows。 Windows主要旨在主要用于鼠标,某些情况下用于键盘。

    翻译自: https://www.poftut.com/what-is-gui-graphical-user-interface/

    展开全文
  • Python 的图形用户界面

    千次阅读 多人点赞 2021-08-14 23:25:51
    Python 的图形用户界面1. 丰富的图形开发界面库1.1tkinter 1. 丰富的图形开发界面库 Python 提供了丰富的图形开发界面库(Python GUI); 1.1tkinter tkinter 模块(TK接口)是 Python 的标准 TK GUI 工具包的接口;...

    1. 丰富的图形开发界面库

    图形用户界面(Graphical User Interface,GUI),Python 提供了丰富的图形开发界面库(Python GUI);

    1.1 tkinter

    tkinter 模块(TK接口)是 Python 的标准 TK GUI 工具包的接口;使用 TK ,无需安装任何包即可直接使用(tkinter是内置在python安装包中);TK 和 tkinter 可在大多数的 UNIX 平台下使用,也可以应用在 Windows 和 Macitosh 系统里,Tk 8.0 的后续版本可是实现本地窗口风格,并能良好地运行绝大多数平台中;
    Python 的 IDLE 也是由 tkinter 模块编写而成的;
    语法:import tkinter
    注意: tkinter 的首字母是小写
    创建一个 GUI 程序的步骤:

    1. 导入 tkinter 模块;
    2. 创建控件;
    3. 指定这个控件的 maseter(即这个控件属于哪一个);
    4. 告诉 GM(geomertry manager)有一个控件产生了;

    tkinter 提供了各种控件,如下所示:
    2021-8-15
    tkinter 的标准属性是所有控件的共同属性,如下表所示:
    2021-8-15
    tkinter 控件有特定的集合状态管理方法,管理整个控件区域组织,下表所示:
    2021-8-15

    例子1:
    2021--
    例子2:
    2021-8-15

    2 wxPython 概述

    wxPython 是一个用于 wxPython (用C++编写)的 Python 的包装器,是一个跨平台 的、优秀的 GUI 工具,能方便地创建完整的、功能健全的 GUI 用户界面;
    wxPython 是 Python 的 一个扩展模块,也是一个免费的软件

    2.1 安装 wxPython

    1. 首先确定安装好了 Python

    2. win + R(或开始“菜单”>运行>输入cmd),输入cmd,打开 命令行窗口;
      2021-8-15

    3. 输入:python -m pip install -U wxPython,回车
      2021-8-15

    4. 输入:pip list,查看是否安装成功
      2021-8-15
      注意: 若系统提示 pip 版本过低,可输入 python -m pip install --upgrade pip 语句来升级 pip;

    3 Jython

    Jython 是Python 的 Java 实现,可以和 Java 无缝集成;
    除了一些标准模块,Jython 还使用了 Java 模块;
    Jython 拥有标准的 Python 中不依赖于 C 语言的全部模块;
    下载地址:点击下载

    3.1 Jython 安装

    1. 首先确定已安装好了 Java
    2. 双击下载完成的 Jython 安装包(我下载的是Jython 2.7.0)
      2021-8-16

    2021-8-16

    1. 选中“I accept”,一直 “Next”

    2021-8-16

    1. 更改安装位置(或不变),再再次 “Next”

    2021-8-16
    5. 选中“All”(全部),再次点击 “Next”

    2021-8-16

    2021-8-16
    2021-8-16

    1. 打开 Jython 的安装目录的 bin 目录,运行 jython 程序

    2021-8-16

    1. 输入 Python 语句,看是否安装成功(Jython 程序也可以运行 Python代码)
      2021-8-16

    3.2 在 Eclipese 中配置 Jython

    1. 打开Java 编译器 Eclipse,点击 “帮助>安装新软件>添加”(help>Install New Software>add)输入如下内容
      名称(name):JyDT Update Site
      位置(Location):http://www.redrobinsoftware.net/jydt/updatesite
      后续步骤我就不一 一 展示了,因为我没有配置成功,所以就不列举出来了,想知道详细安装步骤点击这里
      2021-8-16

    4. 结语

    若我的文章对你有帮助,请点个赞,收个藏,欢迎大家留言评论;
    欢迎大家留言评论,若有文章有什么错误的地方,欢迎大家指教,谢谢。

    展开全文
  • windows 2012 R2系统进去以后只有CMD命令窗口,没有图形化界面,除了cmd其余的全部是黑的。 今天安装SQL2014的时候需要安装.net35提示,安装不上去,想着是不是赢安装.net45所以才安装不上,结果卸载了.还出错,重新...
  • 一般情况下windows的服务程序运行权限时system,不能显示可以与用户交互的界面,本文讲述了一个用vc2008创建ATL的service,并在服务启动时启动一个可以显示出来,并且可以与用户交互的notepad窗口,同理你可以用此...
  • VMware虚拟机安装 windows server 2012 SQL server2012

    千次阅读 多人点赞 2019-09-26 21:06:14
    VMware 安装windows server 2019系统 安装vmware tools 安装SQL server2012 概括 先在vmware中安装一个windows操作系统(Win2K或是XP,取决于你要安装的SQL Server版本),然后在上面安装SQL Server。如果需要从...
  • centos7安装图形化界面图文详解

    万次阅读 多人点赞 2019-09-05 11:03:00
    如果你的centos7是最小化安装的那默认都是不带X WINDOWS的,那在安装图形化界面之前,你得先安装一下X WINDOWS,这个控制功能 yum groupinstall "X Window System" 1.输入安装命令 yum gro...
  • windows程序设计之简单界面入门

    千次阅读 2017-06-16 13:49:02
    突然自己想完整地写一款mm,除了网络通信、文件操作之类的功能类...于是乎,决定windows编程先从界面开始写。 新建一个空的win32工程,只有以下代码:#include "stdafx.h" int APIENTRY WinMain(HINSTANCE hInstance,
  • Java 图形用户界面编程

    千次阅读 多人点赞 2019-03-27 14:03:29
    要进行Java的图形用户界面编程就需要学习Java的API,即Application Programming Interface——应用程序编程接口,是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又...
  • Win10安装Tomcat服务器与配置环境变量

    万次阅读 多人点赞 2019-10-18 11:52:41
    Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。本文主要讲述Windows环境Tomcat服务器安装与...
  • 基于JAVA GUI图形用户界面的计算器

    千次阅读 2019-12-08 21:55:37
    设计这个计算器主要是参考Windows操作系统中自带的计算器,由于编者水平和时间的限制,不能将计算器设计到科学型及其他更复杂的类型,在设计过程中还参考了一些其他的优秀设计。但本计算器除了常用的加减乘除(可以...
  • Windows Embedded CE提供多语言用户界面(Multilingual User Interface,MUI)功能,允许用户在设备上更改用户界面的显示语言。您可以针对不同的地区语言和市场,使用 MUI 生产一个系统镜像。该镜像包含了不同的...
  • 1.用户界面原理和界面库编程模型

    千次阅读 2018-07-26 20:51:01
    从最早的图形用户界面操作系统Apply Lisa,到空前的windows 1.0,再到最新的Windows、苹果、Linux操作系统,图形用户界面已经是个人电脑不可缺少的部分。图形用户界面的发展是建立在成熟的图形学基础上的,本系列...
  • DotNetBar for Windows Forms用户界面

    千次阅读 2014-05-06 15:53:19
    DotNetBar是一款带有56个Windows Form 控件的工具箱,使开发人员可以轻而易举地创建出专业美观的Windows Form应用程序用户界面,控件全部采用C#编写,引入了全部Office 2007 style Ribbon控件、Office 2003 office...
  • 修改Win10 C盘用户文件夹名称

    千次阅读 热门讨论 2019-01-18 12:00:29
    修改Win10 C盘用户文件夹名称 首先,你还需要有一个另外一个管理员用户,没有的话创建一个。 1.注销当前用户 开始菜单右键或者win+x-&...win+r 弹出运行界面,输入regedit并回车进入注册表,左侧找到以下文件夹:计...
  • 操作系统用户界面——用户界面

    千次阅读 2019-08-26 13:35:59
    用户界面的概念 定义:OS提供给用户控制计算机的机制,又称用户接口 分类: 操作界面 系统调用(system call,系统功能调用,程序界面) 典型的操作界面 图形界面 命令界面 批处理命令/程序 操作界面 图形...
  • 作为中文应用的开发者,我们多半会认为系统的默认字体是“微软雅黑”。...本文内容Windows 10/8.1/8/7/VistaWindows XP 及更早系统 Windows 10/8.1/8/7/Vista Windows 操作系统的默认字体是 Segoe UI(发音为 see g...
  • 几个知名的编程语言排行榜索引已证明了Python在全球开发人员中的崛起。但是,以开发人员为中心的英国分析家SlashData现在已经对使用该...此外,Python具有从Web开发到桌面图形用户界面(GUI)的广泛应用程序。Python...
  • 域控:Windows Server 2008 二、实验步骤 1、在域st13中创建组织单位group1、group2,并分别在这两个组中创建一个用户。 group1 的用户为xiaoxiao group2 的用户为dede 在group1中创建用户同上面的步骤。 ...
  • Windows c++界面开发初学(一)

    万次阅读 多人点赞 2018-06-07 15:25:39
    的开发的界面库 一、Windows Api 为使程序员编写具有Windows风格的应用程序,Windows提供了一个应用程序编程接(ApplicationProgrammingInterface,简称API),它是Windows系统与Windows应用程序间的标准程序接口,...
  • C语言Windows图形界面程序学习(一)

    万次阅读 多人点赞 2019-03-13 21:42:53
    MessageBox返回的是用户点击的按钮,为 IDYES 等 写一个小程序判断是不是一个good man(有[是],[否],问号图标),点击“是”,弹出“你不是一个good man”的对话框,否则弹出“是否重试”的对话框,源代码如下...
  • 激活administrator用户,以管理员身份运行CMD,执行命令: net user administrator /active:yes 此时administrator 没有密码,可以为它添加一个: net user administrator  yourPWD12# 如果是隐藏,则需要: ...
  • 什么是用户界面特权隔离机制

    千次阅读 2012-11-26 16:38:57
    用户界面特权隔离(User Interface Privilege Isolation,简称UIPI),是从Windows NT 6.0开始引入的技术。其目的在于防止粉碎窗口攻击(英语:Shatter attack)。用户界面特权隔离阻止较低等完整性级别...
  • 虽然在win2012中可以切换,但在微软最新的windows server 2016中取消了这一切换机制。 windows server 2016 core 启动gui有方法吗? windows server 2016 "Unlike some previous releases of Windows ...
  •  Windows Server 2012图形用户界面(GUI)和服务器核心(Server Core)之间的切换 http://blog.51cto.com/ycrsjxy/1047742 Windows Server 2012下安装开启GUI图解 ... ...WIN10开机I
  • 入门学习Linux常用必会60个命令实例详解doc/txt

    千次下载 热门讨论 2011-06-09 00:08:45
    登录后会看到下面这个界面(以超级用户为例): [root@localhost root]# last login:Tue ,Nov 18 10:00:55 on vc/1 上面显示的是登录星期、月、日、时间和使用的虚拟控制台。 4.应用技巧 Linux 是一个真正的多...
  • Windows API之图形界面(一)

    万次阅读 2014-10-20 00:57:57
    Windows API之图形界面(一) tkorays (tkorays@hotmail.com) 利用windows api来写图形界面,看起来比较复杂,但是了解原理后也看起来十分简单了。 流程 其中重点在于: 1)创建窗口类(WNDCLASS*...
  • java图形用户界面基础

    万次阅读 多人点赞 2016-11-26 21:27:52
    Swing和AWT介绍java的时候,将图形用户界面相关类捆绑在一起,放在一个称为抽象窗口工具箱(Abstract Window Toolkit,AWT)的库中。AWT适合开发简单的图形用户界面,但并不适合开发复杂的GUI项目。除此之外,AWT更容易...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 451,963
精华内容 180,785
关键字:

windows用户界面是什么