当前位置:首页 » 编程语言 » 工控显示屏可以用c语言写界面吗
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

工控显示屏可以用c语言写界面吗

发布时间: 2023-06-13 08:17:14

c语言能不能写软件界面,有的话具体怎么写

C++可以写。这个是windows窗口的写法:

#include <windows.h>
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); /* Declare Windows procere */
char szClassName[ ] = "WindowsApp"; /* Class Name */

int WINAPI WinMain(HINSTANCE hThisInstance,
HINSTANCE hPrevInstance,
LPSTR lpszArgument,
int nFunsterStil)

{
HWND hwnd; /* This is the handle for our window */
MSG messages; /* Here messages to the application are saved */
WNDCLASSEX wincl; /* Data structure for the windowclass */

/* The WNDCLASSEX structure */
wincl.hInstance = hThisInstance;
wincl.lpszClassName = szClassName;
wincl.lpfnWndProc = WndProc; /* This function is called by windows */
wincl.style = CS_DBLCLKS; /* Catch double-clicks */
wincl.cbSize = sizeof(WNDCLASSEX);
wincl.hIcon = LoadIcon(NULL, IDI_APPLICATION);
wincl.hIconSm = LoadIcon(NULL, IDI_APPLICATION);
wincl.hCursor = LoadCursor(NULL, IDC_ARROW);
wincl.lpszMenuName = NULL; /* No menu */
wincl.cbClsExtra = 0;
wincl.cbWndExtra = 0;
wincl.hbrBackground = (HBRUSH) GetStockObject(WHITE_BRUSH);

/* Register the window class, if fail quit the program */
if(!RegisterClassEx(&wincl)) return 0;

/* The class is registered, create the window*/
hwnd = CreateWindowEx(
0,
szClassName,
"Simple Windows App",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
500,
300,
HWND_DESKTOP,
NULL,
hThisInstance,
NULL
);

/* Make the window visible on the screen */
ShowWindow(hwnd, nFunsterStil);
/* Run the message loop. It will run until GetMessage( ) returns 0 */
while(GetMessage(&messages, NULL, 0, 0))
{
TranslateMessage(&messages);
DispatchMessage(&messages);
}
/* The program return-value is 0 - The value that PostQuitMessage( ) gave */
return messages.wParam;
}

/* This function is called by the Windows function DispatchMessage( ) */
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message) /* handle the messages */
{
case WM_DESTROY:
PostQuitMessage(0); /* send a WM_QUIT to the message queue */
break;
default: /* for messages that we don't deal with */
return DefWindowProc(hwnd, message, wParam, lParam);
}
return 0;
}

㈡ 怎么用c语言做一个界面

C 语言,就像他的名字一样,他就是一门计算机编程语言;
要做界面,需要调用绘图函数,而绘图函数有很多种,Windows 的 GDI 和 GDI+ 或者 Direct2D,Linux 下的 OpenGL,移动设备上的 XNA ,都可以;
MFC 是微软为咱们创建 Windows 窗体程序而设计好的开发包,可以提高开发效率,以面向对象的方式思考和设计程序,学习这个,需要有 Windows API 基础;
至于 API,在 Windows 下面,就是指 Win32 API 了,就是 32 位 Windows 操作系统的应用程序编程接口,是 Windows 系统提供给开发者的底层功能;
这些都不是一两句话可以概括的,需要自己多点去接触,才会有自己的心得;

最后一条比喻不是很恰当,面向对象拆开来,可以是一堆 API,也可以是单纯的一堆 C 语言句子,当然,也可以是一堆嵌入式汇编语句,所以没办法进行比喻;

㈢ 弱弱的问句:C语言能进行图形界面(GUI)开发吗

可以的 我现在就在用呢

1.可以用 winC ,就是直接在windows下编程。这个比较麻烦,因为所有的东西都必须自己写(如创建窗口,初始化等一些基本的)以前老师上课的时候讲过,理解了之后,感觉其实很简单,而且都是一个套路,看个例子就能明白的

2.可以用MFC创建界面,里面要具体实现的东西,直接用C语言写就可以了,很方便,其实MFC就是对winC的一种封装,就是第一点说的你要写的那些基本的东西(创建窗口,初始化之类的),他都给你弄好了,不用自己写,直接创建一个工程就OK了

3.可以创建C#工程,用C#创建界面(直接拖控件就行,像VB那样),然后,你要实现的东西用C语言写。或者,你先将要实现的东西,用C语言写好,编译成动态链接库DLL,然后在C#工程中调用该DLL。C#工程实际上就起到一个界面封装的目的,也比较方便

个人建议用 MFC

㈣ 用C语言设计屏幕界面程序!

呵呵 我有哦 今天刚编了一个 是一个运动的羽毛球拍
然后是在写汉字 是一笔一画写的哦 在写“我爱你”这三个字
现在还不想分享 我送给了女朋友
你要的话加我QQ

还有一个是烟花的程序
可以现场给你 挺简单的

#include "slib.h"
#include"graphics.h"
yanhua()
{int gd=DETECT,gr,a[8],b[8],x,y,i,j,c;
initgraph(&gd,&gr,"");
randomize();
for(;!kbhit();)
{x=rand()P0 100; /*随机中心坐标*/
y=rand()00 100;
a[0]=x; /*各点坐标的计算,我的烟花图形没能是圆的*/
b[0]=y-10;
a[1]=a[0] 5;
a[2]=a[1] 5;
a[3]=a[1];
a[4]=a[0];
a[5]=a[0]-5;
a[6]=a[5]-5;
a[7]=a[6] 5;
for(j=1;j<5;j )
b[j]=b[j-1] 5;
for(j=5;j<8;j )
b[j]=b[j-1]-5;
for(j=0;j<6;j ) /*烟花的大小设定*/
{
for(i=0;i<8;i )
{
c=rand() 1; /*各点的颜色随机*/
setcolor(c);
circle(a[i],b[i],1);
}
delay(5000);
cleardevice();
b[0]-=10; /*各点的坐标变换*/
a[1] =5;
b[1]-=5;
a[2] =10;
a[3] =5;
b[3] =5;
b[4] =10;
a[5]-=5;
b[5] =5;
a[6]-=10;
a[7]-=5;
b[7]-=5;
}
}
getch();
closegraph();
}

main()
{while(1)
yanhua();
}

㈤ 如何用C语言编程出可视化界面

//调用api函数创建窗口

//示例:

#include <windows.h>


LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);//窗口过程函数


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;//预留的额外空间,一般为 0

wndclass.cbWndExtra = 0;//预留的额外空间,一般为 0

wndclass.hInstance = hInstance;//应用程序的实例句柄

wndclass.hIcon = LoadIcon(NULL, IDI_APPLICATION);//为所有基于该窗口类的窗口设定一个图标

wndclass.hCursor = LoadCursor(NULL, IDC_ARROW);//为所有基于该窗口类的窗口设定一个鼠标指针

wndclass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);//指定窗口背景色

wndclass.lpszMenuName = NULL;//指定窗口菜单

wndclass.lpszClassName = szAppName;//指定窗口类名


if (!RegisterClass(&wndclass))//注册窗口

{

MessageBox(NULL, TEXT("这个程序需要在 Windows NT 才能执行!"), szAppName, MB_ICONERROR);

return 0;

}


hwnd = CreateWindow(szAppName, //创建窗口

TEXT("windows"),

WS_OVERLAPPEDWINDOW,

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;


switch (message)

{

case WM_PAINT:

hdc = BeginPaint(hwnd, &ps);

GetClientRect(hwnd, &rect);

DrawText(hdc, TEXT("第一个C语言窗口程序!"), -1, &rect,

DT_SINGLELINE | DT_CENTER | DT_VCENTER);

EndPaint(hwnd, &ps);

return 0;


case WM_DESTROY:

PostQuitMessage(0);

return 0;

}


return DefWindowProc(hwnd, message, wParam, lParam);

}

㈥ 用C语言可以进行有界面的编程吗

1、Windows下用API函数完全可以进行图形界面编程,不过效率太低,不如用VC、VB这种东西直接用鼠标拖放生成来得方便。非图形界面就容易一些了,命令行对话式界面在技术上很容易。


2、例程:

//Window.cpp:.
#include<windows.h>
LRESULTCALLBACKWndProc(HWND,UINT,WPARAM,LPARAM);


intAPIENTRYWinMain(HINSTANCEhInstance,//应用程序的实例句柄,
HINSTANCEhPrevInstance,
LPSTRlpCmdLine,//命令行
intnCmdShow)//显示方式
{
MSGmsg;
HWNDhWnd;
charszTitle[]="系统信息";//Thetitlebartext
charszWindowClass[]="popMsg";//Thetitlebartext
WNDCLASSEXwcex={0};
wcex.cbSize=sizeof(WNDCLASSEX);//WNDCLASSEX结构体大小
wcex.style=CS_HREDRAW|CS_VREDRAW;//位置改变时重绘
wcex.lpfnWndProc=(WNDPROC)WndProc;//消息处理函数
wcex.hInstance=0;//当前实例句柄
wcex.hbrBackground=(HBRUSH)COLOR_WINDOWFRAME;//背景色
wcex.lpszClassName=szWindowClass;//参窗口类名
wcex.hIcon=0;//图标
wcex.hCursor=LoadCursor(NULL,IDC_ARROW);//光标
wcex.lpszMenuName=0;//菜单名称
wcex.hIconSm=0;//最小化图标
RegisterClassEx(&wcex);//注册窗口类

hWnd=CreateWindow(szWindowClass,szTitle,WS_SYSMENU|WS_VISIBLE,//创建窗口
CW_USEDEFAULT,CW_USEDEFAULT,400,300,NULL,NULL,0,NULL);
if(!hWnd){
returnFALSE;
}

ShowWindow(hWnd,nCmdShow);
UpdateWindow(hWnd);

while(GetMessage(&msg,NULL,0,0))//消息循环:
{
TranslateMessage(&msg);//转化虚拟按键到字符消息
DispatchMessage(&msg);//分派消息调用回调函数
}
returnmsg.wParam;
}

LRESULTCALLBACKWndProc(HWNDhWnd,UINTmessage,WPARAMwParam,LPARAMlParam)
{
PAINTSTRUCTps;
HDChdc;
RECTrect;
switch(message)
{
caseWM_PAINT://重绘消息
hdc=BeginPaint(hWnd,&ps);
GetClientRect(hWnd,&rect);
MoveToEx(hdc,10,10,0);
SelectObject(hdc,::CreatePen(PS_SOLID,1,RGB(0xFF,0,0)));
LineTo(hdc,100,200);
//DrawText(hdc,szHello,strlen(szHello),&rt,DT_CENTER);
EndPaint(hWnd,&ps);
break;

caseWM_CREATE:

RegisterHotKey(hWnd,1,0,0x41);
break;
caseWM_HOTKEY:
MessageBox(0,0,0,0);
break;
caseWM_TIMER:


break;
caseWM_DESTROY://窗口销毁消息
PostQuitMessage(0);
break;
default:
returnDefWindowProc(hWnd,message,wParam,lParam);
}
return0;
}

㈦ 如何用c语言设计界面

使用graphic相关的函数可以做图像界面。
如果是类似Dos那样的,你就使用一串*或#号等分割。

㈧ 如何在工控机里使用C语言编程

1、用在嵌入式系统上面多一点,其它地方好像不常用,不过C语言学好了,基础也就打好了,学其它语言也能容易上手。 一开始学语言不能浮燥,VB、C#等虽能很容易做出漂亮的界面,但C语言才是真正修炼内功的方式。

2、主要内容有:
1)捕获采集的设备输入
2)分析输入数据,
3)输出控制信号

㈨ 工控一体屏用什么编写的

C语言。工控一体屏是复杂程序产品,使用的是C语言编写的。工控一体机是工业控制电脑的简称。没有带显局宽示屏的也有人叫工控机、工业电脑、工业如备主机、桐橡亮工业控制器。

㈩ c语言如何编写界面程序

一、C语言中要做图形界面,首先需要设置为图形模式,确定显卡类型,对屏幕进行初始化等等。

二、相关的函数如下:

1.detectgraph()显示卡检测函数

2.initgraph()图形初始化函数

3.getdrivername()获取图形驱动程序名的指针

4.getgraphmode()获取图形模式函数

5.getmoderange()获取模式值范围函数

6.getmaxmode()获取最大显示模式函数

7.getmodename()获取显示模式名函数

8.graphdefaults()图形设扰耐置复位缺省值函数

9.setgraphmode()设置图形模式函数

10.restorecrtmode()恢复文本显示模式函数

11.graphresult()图形操作结果函数

12.grpaherrormsg()图形错误信息函数

13.setgraphbufsize()设置图形缓冲区大小函数

14.setactivepage()设置可输出显示页函数

15.setvisualpage()设置可见显示页数

16.closegraph()关闭图形模式函数GTK+去这本书的pdf看看吧GTK+2.0编程范例QT啊不过安装QT环境有点复杂貌似QT是C++,GTK是C.......C语方下可以在文本模式下作出,也可以在图形模式下画出,用的是一些扩展库,就是说不是C标准库,下面给一个框架,不知道建悉李举不建议学,感觉过时了,看你自已的兴趣了,感兴趣下了功夫肯定能学好,睁碧因为它根本就不难,只不过用了些非标准库的所谓高级函数而已