这是一个在minigui里面打开用户自己线程的例子:).c

来自「MiniGUI1.6.9的窗口编程实例」· C语言 代码 · 共 81 行

C
81
字号
#include <stdio.h>#include <string.h>#include <minigui/common.h>#include <minigui/minigui.h>#include <minigui/gdi.h>#include <minigui/window.h>#include <minigui/mywindows.h>int i=1;void * sendMsgs(void){     while(i){    sleep(1);    printf("Ho Ho!\n");    }    printf("bye bye !\n");}static int HelloWinProc(HWND hWnd, int message, WPARAM wParam, LPARAM lParam){    switch (message) {        case MSG_CLOSE:            DestroyMainWindow (hWnd);            PostQuitMessage (hWnd);            i=0;            return 0;    }    return DefaultMainWinProc(hWnd, message, wParam, lParam);}int MiniGUIMain (int argc, const char* argv[]){    MSG Msg;    HWND hMainWnd;    MAINWINCREATE CreateInfo;    pthread_t thread;    int ret;#ifdef _LITE_VERSION    SetDesktopRect(0, 0, 1024, 768);#endif    ret=pthread_create(&thread,NULL,(void *)sendMsgs,NULL);    CreateInfo.dwStyle = WS_VISIBLE | WS_BORDER | WS_CAPTION;    CreateInfo.dwExStyle = WS_EX_NONE;    CreateInfo.spCaption = "  This is a main window width a customer pthread!";    CreateInfo.hMenu = 0;    CreateInfo.hCursor = GetSystemCursor(0);    CreateInfo.hIcon = 0;    CreateInfo.MainWindowProc = HelloWinProc;    CreateInfo.lx = 100;    CreateInfo.ty = 100;    CreateInfo.rx = 600;    CreateInfo.by = 400;    CreateInfo.iBkColor = COLOR_lightwhite;    CreateInfo.dwAddData = 0;    CreateInfo.hHosting = HWND_DESKTOP;        hMainWnd = CreateMainWindow (&CreateInfo);        if (hMainWnd == HWND_INVALID)        return -1;    ShowWindow(hMainWnd, SW_SHOWNORMAL);    while (GetMessage(&Msg, hMainWnd)) {        TranslateMessage(&Msg);        DispatchMessage(&Msg);    }     pthread_join(thread,NULL);    MainWindowThreadCleanup (hMainWnd);    return 0;}#ifndef _LITE_VERSION#include <minigui/dti.c>#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?