这是一个windows的GUI程序,关键的问题是运行环境不知道是不是对的。
如果是visual C++里面的GUI程序,入口函数并不是main(),这个是windows框架帮你做掉了。
windows的GUI入口函数是WinMain()
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPreInstance, LPSTR lpCmdLine, int nCmdShow)
{
//创建模态对话框
/ 需要把整型转换成字符串类型 /
/ 没有父窗口 值为 NULL /
DialogBox(hInstance, MAKEINTRESOURCE(IDD_MAIN_DLG), NULL, MainDlgProc);
return 0;
}
然后调试的方法也不要用printf。
switch (uMsg)
{
// 对话框初始化消息
case WM_INITDIALOG:
// 此时对话框还没有显示 但是对话框已经创建好了
MessageBox(hWnd, L"初始化", L"提示", MB_OK);
// 设置对话框标题 [如果对话框没有设置好 不能给对话框设置标题]
SetWindowText(hWnd,L"这是一个对话框程序");
break;
}
可以直接用MessageBox可以d出消息框。
其实无论在什么平台下,GUI应用程序的基本开发方法都是相似的。一般都包括下面这样四个步骤:
①创建容器
首先要创建一个GUI应用程序,需要创建一个用于容纳所有其它GUI组件元素的载体,Java中称为容器。典型的包括窗口(Window)、框架(Frame/JFrame)、对话框(Dialog/JDialog)、面板(Panel/JPanel)等。只有先创建了这些容器,其它界面元素如按钮(Button/JButton)、标签(Label/JLabel)、文本框(TextField/JTextField)等才有地方放。 ②添加组件
为了实现GUI应用程序的功能,为了与用户交换,需要在容器上添加各种组件/控件。这需要根据具体的功能要求来决定用什么组件。例如,如果需要提示信息,可用标签(Label/JLabel);如果需要输入少量文本,可用文本框(TextField/JTextField);如果需要输入较多文本,可用文本区域(TextArea/JTextArea);如果需要输入密码,可用密码域(JPasswordField)等等。
③安排组件
与传统的Windows环境下的GUI软件开发工具不同,为了更好地实现跨平台,Java程序中各组件的位置、大小一般不是以绝对量来衡量,而是以相对量来衡量。例如有时候,程序的组件的位置是按"东/East"、"西/West"、"南/South"、"北/North"、"中 /Center"这种方位来标识的。因此,在组织界面时,除了要考虑所需的组件种类外,还需要考虑如何安排这些组件的位置与大小。这一般是通过设置布局管理器(Layout Manager)及其相关属性来实现的。事实上上述按方位来安排组件就是采用了Java中多种布局管理器里的BorderLayout布局管理器。
④处理事件
为了完成一个GUI应用程序所应具备的功能,除了适当地安排各种组件产生美观的界面外,还需要处理各种界面元素事件,以便真正实现与用户的交换,完成程序的功能。在Java程序中这一般是通过实现适当的事件监听者接口来完成的。比如如果需要响应按钮事件,就需要实现 ActionListener监听者接口;如果需要响应窗口事件,就需要实现WindowListener监听者接口。
可以生成GUI的语编程语言有很多,GUI是图形用户接口的通称,你可以用汇编、C、C,basic,VB,VC,JAVA等写出图形界面的应用程序。
用C写图形界面是比较困难,界面上的任何图形都需要做多次处理,如用BMP就很麻烦。但可以使用集成的开发环境,如VC就会好一些,当然用BC也可以。这个要看个人的使用习惯了。
Python进行GUI开发的库其实很多,下面我简单介绍几个不错的库,感兴趣的朋友可以自己尝试一下,实验环境win10+python36+pycharm50,主要内容如下:
tkinter
这个就不用多说了,python自带的GUI开发标准库,对于开发小型简单的应用来说,完全可以了,开源、跨平台,使用起来非常方便,下面我简单测试一下,主要代码如下:
点击运行程序,效果如下,一个窗口一个Label标签:
easygui
这个是基于tkinter的一个窗口GUI库,可以快速创建窗口对话框,包括常见的登陆对话框、注册对话框等,下面我简单介绍一下这个库的安装和使用:
1首先,安装easygui,这个直接在cmd窗口输入安装命令“pipinstalleasygui”就行,如下:
2安装完成后,我们就可以直接编写代码进行测试了,主要代码如下,非常简单:
点击运行这个程序,效果如下:
kivy
这是一个跨平台的GUI应用程序开发库,可以用来开发安卓、苹果应用,一套程序,可以处处运行,下面我简单介绍一下这个库的安装和使用:
1首先,安装kivy,这个直接按官方教程安装就行,如下:
2安装完成后,就可以直接编写代码进行测试了,主要代码如下,非常简单:
点击运行程序,效果如下,这里你可以将其打包为手机应用,安装到手机上:
wxpython
这也是一个免费、跨平台的PythonGUI开发库,相比较前面的tkinter来说,功能更为强大,控件也更多,下面我简单介绍一下这个库的安装和使用:
1首先,安装wxpython,这个也直接在cmd窗口输入命令“pipinstallwxpython”就行,如下:
2安装完成后,我们就可以直接编写相关代码进行测试了,主要代码如下,非常简单,一个简单的文本编辑器:
点击运行这个程序,效果如下:
pyqt
这个Qt的一个Python接口库,借助于Qt强大的用户界面,Python也可以快速开发出GUI程序,组件更多,也更方便,只要你有一定的Qt基础,很快就能掌握这个库的使用,下面我简单介绍一下这个库的安装和使用:
1首先,安装pyqt,这个直接在cmd窗口输入安装命令“pipinstallpyqt5”就行,如下,安装需要稍微等待一会儿:
2安装完成后,我们就可以直接编写代码进行测试了,如下,一个简单的计算器:
点击运行这个程序,效果如下:
至此,我们就介绍完了这5个PythonGUI库。总的来说,这5个库使用起来都非常不错,如果你的应用界面比较简单,功能要求不高,可以选择tkinter和easygui,如果界面比较复杂,功能要求比较复杂,可以考虑使用wxpython或pyqt,当然,你也可以使用其他GUI库,像pygame等,根据实际项目需求而定,网上也有相关资料和教程,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言。
您好,emWin时钟指针的旋转是基于它的角度和时间的。它的角度是指它从12点开始旋转的角度,而时间是指它每秒旋转的角度。因此,要让emWin时钟指针旋转,需要设置它的角度和时间。首先,您需要调用GUI_SetAngle()函数来设置指针的角度,然后调用GUI_SetTime()函数来设置指针每秒旋转的角度。最后,调用GUI_Start()函数来启动指针的旋转。
SDC是一个标准,符合ASIC时序验证的语法。Altera在通用的SDC标准上增加了自己的一些命令使得用起来更方便,比如derive_pll_clocks。
编辑一个SDC文件的方法有几种: 1 手动输入。这个需要对语法熟悉; 2 用TimeQuest下的GUI。GUI界面 *** 作,简单易懂; 3 更简单的一种方法是,在assignments->TimeQuest Timing Analyzer Wizard下,用更简单的GUI来产生SDC时序约束文件(几乎跟Classic的 *** 作方式一样,并且更加简单、直观,有波形指示)。
在编译器下建立一个新项目,也可以利用已有项目。此过程中需要注意,晶振的选择,因为for循环里指令的执行时间和晶振有直接关系,本例中晶振使用110592M。
编写一段关于延时的函数,主要利用for循环,代码如下:
void delay_ms(unsigned int ms)
{undefined
unsigned int i;
unsigned char j;
for(i=0;i
{undefined
for(j=0;j<200;j++);
for(j=0;j<102;j++);
}
}
其中ms是输入参数,如果输入1,就是要求程序延时1ms。
j变量是调整程序运行的时间参数。调整j的数值,使1次循环的时间在1ms。
将此程序编译通过,然后利用软件仿真,调整时间。
以上就是关于C语言这里哪出错了,对话框出不来,加printf调试也输出不了全部的内容,包括:C语言这里哪出错了,对话框出不来,加printf调试也输出不了、java中GUI的实现方式是、如何用C语言编写GUI的软件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)