硬汉嵌入式论坛

 找回密码
 立即注册
查看: 6422|回复: 8
收起左侧

[emWin] MESSAGE BOX 可以改变大小与字体吗?

[复制链接]

13

主题

87

回帖

126

积分

初级会员

积分
126
发表于 2014-11-24 09:08:55 | 显示全部楼层 |阅读模式
MESSAGEBOX.jpg MESSAGE BOX 可以改变大小与字体吗?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107628
QQ
发表于 2014-11-24 18:19:43 | 显示全部楼层
使用Message的另一种用户模式,那种模式下可以设置不同的大小和字体。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107628
QQ
发表于 2014-11-24 22:37:20 | 显示全部楼层
MESSAGEBOX_Create(
回复

使用道具 举报

13

主题

87

回帖

126

积分

初级会员

积分
126
 楼主| 发表于 2014-11-25 09:59:07 | 显示全部楼层
我刚测试了下 是非阻塞式的      QQ图片20141125093125.jpg    最后那句话意思让自己创建阻塞式对话框来操作吗?没有在小工具找修改按钮大小 边框大小的相关函数,这些好像都是创建的时候就定义好了的
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107628
QQ
发表于 2014-11-25 22:00:59 | 显示全部楼层
abcdotaabc:
我刚测试了下 是非阻塞式的        最后那句话意思让自己创建阻塞式对话框来操作吗?没有在小工具找修改按钮大小 边框大小的相关函数,这些好像都是创建的时候就定义好了的
官方有个例子的:DIALOG_MessageBoxUser.c

下面是源码的一部分,教你如何设置这个消息窗口了:

/*********************************************************************
*
*       Static code
*
**********************************************************************
*/
/*********************************************************************
*
*       _CreateMessageBox
*/
static WM_HWIN _CreateMessageBox(const char * sMessage, const char * sCaption, int Flags, const GUI_FONT * pFont) {
  WM_HWIN  hWin;
  WM_HWIN  hItem;
  GUI_RECT Rect;

  hWin = MESSAGEBOX_Create(sMessage, sCaption, Flags);
  //
  // Change font of message box window
  //
  FRAMEWIN_SetFont(hWin, pFont);
  //
  // Adjust size
  //
  WM_GetWindowRectEx(hWin, &Rect);
  WM_SetWindowPos(hWin, Rect.x0 - 15,
                        Rect.y0 - 15,
                        Rect.x1 - Rect.x0 + 1 + 30,
                        Rect.y1 - Rect.y0 + 1 + 30);
  //
  // Change font of button widget
  //
  hItem = WM_GetDialogItem(hWin, GUI_ID_OK);
  BUTTON_SetFont(hItem, pFont);
  //
  // Adjust size of button widget
  //
  WM_GetWindowRectEx(hItem, &Rect);
  WM_SetWindowPos(hItem, Rect.x0,
                         Rect.y0 + 10,
                         Rect.x1 - Rect.x0 + 1 + 30,
                         Rect.y1 - Rect.y0 + 1 +  5);
  //
  // Change font of text widget
  //
  hItem = WM_GetDialogItem(hWin, GUI_ID_TEXT0);
  TEXT_SetFont(hItem, pFont);
  //
  // Adjust size text widget
  //
  WM_GetWindowRectEx(hItem, &Rect);
  WM_SetWindowPos(hItem, Rect.x0,
                         Rect.y0,
                         Rect.x1 - Rect.x0 + 1 + 30,
                         Rect.y1 - Rect.y0 + 1 + 12);
  return hWin;
}

/*********************************************************************
*
*       _EnableSkinning
*/
static void _EnableSkinning(void) {
  FRAMEWIN_SetDefaultSkin(FRAMEWIN_SKIN_FLEX);
  BUTTON_SetDefaultSkin  (BUTTON_SKIN_FLEX);
}

/*********************************************************************
*
*       Public code
*
**********************************************************************
*/
/*********************************************************************
*
*       MainTask
*/
void MainTask(void) {
  GUI_Init();
  _EnableSkinning();
  while (1) {
    GUI_SetFont(&GUI_Font20B_ASCII);
    GUI_DispStringHCenterAt("Applicatoin defined MESSAGEBOX", 160, 5);
    GUI_ExecCreatedDialog(_CreateMessageBox("Message", "Caption", 0, &GUI_Font24));
    GUI_Clear();
    GUI_Delay(1000);
  }
}
回复

使用道具 举报

13

主题

87

回帖

126

积分

初级会员

积分
126
 楼主| 发表于 2014-11-26 08:53:56 | 显示全部楼层
[s:151]
回复

使用道具 举报

13

主题

87

回帖

126

积分

初级会员

积分
126
 楼主| 发表于 2014-11-26 09:09:38 | 显示全部楼层
小工具里没有设置按钮大小的相关函数
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107628
QQ
发表于 2014-11-26 09:46:38 | 显示全部楼层

回 abcdotaabc 的帖子

abcdotaabc: 小工具里没有设置按钮大小的相关函数 (2014-11-26 09:09) 
//
  // Adjust size of button widget
  //
  WM_GetWindowRectEx(hItem, &Rect);
  WM_SetWindowPos(hItem, Rect.x0,
                         Rect.y0 + 10,
                         Rect.x1 - Rect.x0 + 1 + 30,
                         Rect.y1 - Rect.y0 + 1 +  5);
回复

使用道具 举报

13

主题

87

回帖

126

积分

初级会员

积分
126
 楼主| 发表于 2014-11-26 10:46:56 | 显示全部楼层
[s:123]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-6-8 19:52 , Processed in 0.313538 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表