導航:首頁 > 五金知識 > c工具箱靜態文本框

c工具箱靜態文本框

發布時間:2022-05-18 00:21:40

① VC中,對話框的初始化問題(靜態文本框)

把你的初始化部分的源代碼拿出來啊
光看個界面能看出什麼來?

② vc++6.0操作方法

VC++6.0上機操作指南

貴州大學計算機科學與技術學院
張志明
2006年9月

目錄
1. Visual C++ 控制台應用程序上機實現步驟
2. MFC對話框應用程序實現舉例
3. MFC單文檔應用程序實現舉例
4. 用32位調試程序了解類和對象的內存映象

1. Visual C++控制台應用程序(Win32 Console Application Project)
上機實現步驟

一. 單文件程序的實現
本教材中的程序在Visual C++環境下都是以Win32 Console Application 項目實現,而且都是單文件程序,即只含有一個源程序(.cpp)文件的C++程序。
一個單文件程序在Visual C++ IDE中的實現主要步驟是:(1)建立新項目(2)建立新文件(3)輸入源代碼(4)編譯、連接,生成可執行程序文件。以上步驟均可在Visual C++的Wizard指導下通過對話框交互輸入完成。
1. 建立新項目:
每個C++程序的實現都要建立一個項目。所謂項目是一個文件生成過程的管理單位,項目名稱就是最後實現的可執行文件的名稱,一個項目就是與生成這個可執行程序文件相關的所有源文件和中間文件的集合,存放在以項目名稱命名的文件夾中。

圖1 Microsoft Visual C++ 6.0系統初始界面

執行菜單命令File>New,打開New對話框:

圖2 打開New對話框

在New對話框的Project選項卡中選擇Win32 Console Application選項,然後輸入項目存放位置項目名稱後確定。
圖3 輸入項目位置和名稱
在Win32 ConsoleApplication-Step 1 of 1對話框中選擇An empty project,完成後返回。系統彈出新建項目信息報告對話框。

圖4 Win32 ConsoleApplication-Step 1 of 1對話框

圖5 新建項目信息報告
2. 建立新文件:
再一次執行菜單命令File>New,打開New對話框,在File選項卡中選擇C++ Sourse File選項,然後輸入源程序文件名。完成後系統打開源程序(.cpp)文件編輯窗口。

圖6 在New對話框輸入源程序文件名
3. 輸入源代碼:
此時即可在源程序(.cpp)文件編輯窗口輸入源程序代碼。

圖7 源程序(.cpp)文件編輯窗口

4. 生成和運行可執行程序文件:
11從源程序文件生成可執行文件,需要經歷編譯,連接兩步,在VC++6.0編程環境中可以有以下幾種操作方式:
(1)打開Build (編譯)菜單,先執行Compile命令,接著再執行Build命令。
(2)打開Build (編譯)菜單,執行Rebuilde All命令。
(3)打開Build (編譯)菜單,直接發出Execute 執行命令,一次性完成編譯、連接和啟動程序執行的任務。
(4)直接單擊「!」(BuildExecute)命令按鈕,一次性完成編譯、連接和啟動程序執行的任務。

圖8 Build (編譯)菜單

圖9 程序運行結果

打開工程文件夾可以找到該工程的所有工作文件。

打開工程文件夾中的Debug子文件夾,可以找到生成的可執行(.exe)文件。

二. 多文件程序的實現
一個較大型C++程序,有時需要包含多個源程序文件。一種常見的情況是將類的定義放在頭(.h)文件中,將類的實現或對類的訪問放在源(.cpp)文件中。

多文件程序的實現與單文件程序的實現方式需要經歷同樣的步驟,不同的是,在編譯之前需要利用新建文件對話框逐一將所有需要的文件追加到項目中。
1. 建立新項目:

2. 建立新文件:
(1)加入和編輯頭文件:
在New對話框,在File選項卡中選擇C/C++ Header File選項,然後輸入頭文件名。完成後系統將打開源程序(.h)文件編輯窗口。

(2)加入和編輯源程序文件
打開New對話框,在File選項卡中選擇C++ Sourse File選項,然後輸入源程序文件名。完成後系統打開源程序(.cpp)文件編輯窗口。
注意:在源程序文件中應該用文件包含命令將頭文件包含進來。如下例源程序文件s719.cpp的第一行:#include"h719.h"

3. 生成和運行可執行程序文件:
步驟同單文件程序的生成和執行。

#

2.MFC對話框應用程序實現舉例
本指導書給出3個MFC對話框應用程序的實現實例,例1為求三科平均成績的簡單程序,例2為實現一個具有四則運算功能的簡單計算器,例3為一個彩票機程序(提供手動搖號和自動搖號兩個彩票機程序版本)。
通過這些程序可以達到以下目的:
掌握AppWizard的使用方法。
掌握Workshop中各種視圖的使用和在不同視圖之間切換的方法。
學會利用控制項工具箱中的控制項定製對話框界面。
學會控制項變數及其他類成員變數的設置。
學會消息映射的概念和操作方法。
學會查看和編輯代碼。
學習編譯、運行和調試對話框應用程序。

例1.實現一個求三科平均成績的MFC對話框應用程序。假設運行時的界面如下:

實現步驟:
1. 在Visual C++ 6.0工作開發環境中,New對話框中選擇MFC AppWizard [exe]項目,輸入項目名稱並指定存放位置。

2. 在MFC Wizard Step1選擇Dialog(基本對話)程序類型,在MFC Wizard Step2中輸入對話框標題「求平均成績」。

AppWizard對話結束後打開對話框編輯窗口如下:

3. 定製界面:添加控制項、設置屬性
刪除對話框模板中原有的「確定」按鈕和內容為「TODO: 在這里設置對話控制。」的Static Text控制項。
在控制項工具箱中取一個Group Box控制項,調整適當大小,滑鼠右鍵單擊該控制項邊框,在彈出的下拉菜單中打開屬性對話框。將Group Box控制項標題由「Static」改為「求平均分」。

在Group Box中添加4個Static Text控制項,按同樣方法修改它們的標題屬性為「成績1」、「成績2」、「成績3」和「平均分」。
在Group Box中添加4個Edit Box控制項,打開屬性對話框的Extended Styles選項卡中將它們設置為文本右對齊(Right Aligend Text)方式。其中第4 個Edit Box控制項的Styles屬性設置為Read-only。

在Group Box中添加一個按鈕Button1,打開屬性對話框將按鈕的標題屬性改為 「計算平均分」。
滑鼠右鍵單擊「取消」按鈕邊框,在彈出的下拉菜單中打開屬性對話框。將按鈕標題改為「退出」。

設計完成的界面如圖,其中控制項屬性列表如下:
控制項
ID號
標題
屬性
Group Box
IDC_STATIC
求平均分

Static Text
IDC_STATIC
成績1

Static Text
IDC_STATIC
成績2

Static Text
IDC_STATIC
成績3

Static Text
IDC_STATIC
平均分

Edit Box
IDC_EDIT1

Align text:Right
Edit Box
IDC_EDIT2

Align text:Right
Edit Box
IDC_EDIT3

Align text:Right
Edit Box
IDC_EDIT4

Align text:Right;Read-only
Button
IDC_BUTTON1
計算平均分

Button
IDCANCEL
退出

4. 添加成員變數
單擊View(查看)>ClassWizard(建立類向導)菜單進入ClassWizard,打開Member Variables選項卡:為4 個Edit Box控制項設置對應的變數:

同樣的方法為其它3個Edit Box控制項設置變數:
控制項ID
變數名
變數類型
數值范圍
IDC_EDIT1
m_S1
int
0~100
IDC_EDIT2
m_S2
int
0~100
IDC_EDIT3
m_S3
int
0~100
IDC_EDIT4
m_Sav
CString

5. 添加消息映射(兩條消息)
進入ClassWizard,打開Messages Maps選項卡,在Object Ids中選擇CAverageDlg,在Messages中滑鼠單擊WM_INIDIALOG,在Member functions中出現生成的消息映射成員函數OnInitDialog提示:

在Object Ids中選擇IDC_BUTTON1,在Messages中滑鼠單擊BN_CLIKED,在彈出對話框中單擊OK按鈕:在Member functions中出現第二個生成的消息映射成員函數OnButton1。

6. 添加代碼
在ClassWizard中雙擊OnInitDialog函數,打開代碼編輯器中的OnInitDialog()函數代碼,找到其中的 // TODO: Add extra initialization here,加入下面的黑體字給出的3行代碼:
BOOL CDlgDlg::OnInitDialog()
{
CDialog::OnInitDialog();
…;
// TODO: Add extra initialization here
m_Sav="0.00";
m_S1=m_S2=m_S3;
UpdateData(FALSE);
return TRUE; // return TRUE unless you set the focus to a control
}
在ClassWizard中雙擊OnButton1()函數,打開代碼編輯器中的OnButton1()函數代碼,找到其中的 // TODO: Add extra initialization here,加入下面的黑體字給出的4行代碼:
void CDlgDlg::OnButton1()
{
// TODO: Add extra initialization here
UpdateData();
double ave=(double)(m_S1+m_S2+m_S3)/3.0;
m_Sav.Format("%6.2f",ave);
UpdateData(FALSE);
}

7. 編譯運行程序:

注釋:
UpdateData()函數的作用是允許更新控制項變數,
UpdateData(FALSE) 禁止更新控制項變數的值。

例2.設計MFC對話框應用程序,實現一個具有四則運算功能的簡單計算器。

1. 新建項目:

2. 定製界面:
(1) 修改MFC AppWizard自動創建的對話框項目模板。刪除模板上自動創建的三個控制項。
(2) 加入「簡單計算器」、「請輸入數據:」、「結果」三個靜態文本框和相應的3個編輯框。
(3) 加入一個Group Box,標題修改為「請選擇運算符:」,並在其中放入4個Radio Button將標題分別改為「+」、「-」、「*」、「/」。
(4) 繼續用滑鼠從工具箱中向對話框添加和3個按鈕控制項,更改按鈕的標題為「計算」、「清除」、「關閉」。

3. 添加變數
本例中用到以下4個CSimpleCalcDlg類的成員變數:
變數類型
名稱
float
m_N1
float
m_N2
float
m_ Result
char
Operator

用ClassWizard為編輯框添加變數:m_N1, m_N2, m_Result

變數char Operator的添加方法:
在WorkSpace中進入ClassView視圖, 滑鼠右鍵單擊CSimpleCalcDlg, 在菜單中選擇「Add Member Variable…」

然後在彈出的對話框的輸入變數類型和名稱:

4. 添加消息映射
用ClassWizard為按鈕控制項添加消息映射:

繼續用ClassWizard為Radio Button控制項添加消息映射:

5. 加入單擊按鈕時的事件響應代碼
在實現文件(cpp文件)中加入單擊按鈕時的事件響應代碼。(雙擊一個按鈕可直接進入函數編輯)
//選擇運算符
void CSimpleCalcDlg::OnRadio1()
{ Operator='+'; }
void CSimpleCalcDlg::OnRadio2()
{ Operator='-'; }
void CSimpleCalcDlg::OnRadio3()
{ Operator='*'; }
void CSimpleCalcDlg::OnRadio4()
{ Operator='/'; }
//計算
void CSimpleCalcDlg::OnButton1()
{
UpdateData();
switch(Operator)
{
case '+':
m_Result=m_N1+m_N2;
break;
case '-':
m_Result=m_N1-m_N2;
break;
case '*':
m_Result=m_N1*m_N2;
break;
case '/':
if(m_N2 == 0 )
MessageBox("除數不能為零!");
else
{
m_Result = m_N1/m_N2;
break;
}
default:
m_Result=m_N1+m_N2;
}
UpdateData(FALSE);
}
//清除
void CSimpleCalcDlg::OnButton2()
{
UpdateData();
m_N1=0;
m_N2=0;
m_Result=0;
UpdateData(FALSE);
}
//關閉
void CSimpleCalcDlg::OnButton3()
{ CDialog::OnOK(); }
6. 編譯運行程序

例3. 彩票機程序:
本例給出手動搖號和自動搖號兩個彩票機程序版本。
1. 彩票機界面:
定製含有7個Edit Box 、1個Progress(進度條)和3偵探按鈕控制項的對話框界面如下:

2. 設置變數:
(1) 設置進度條變數:

(2) 設置7個編輯框變數:

(3)添加類成員變數m_x:

3. 消息映射:
在ClassWizard中產生OnInitDialog、OnButton1、OnButton2、OnOK四個消息映射函數:

4. 添加代碼:
//初始化
BOOL CLotusDlg::OnInitDialog()
{
CDialog::OnInitDialog();

……
// TODO: Add extra initialization here
m_x=0;
m_pProg.SetRange(0,70);
srand((unsigned)time(NULL));
return TRUE; // return TRUE unless you set the focus to a control
}
(一)手動搖號
//手動搖號,每按一次搖號按鈕出一個號
void CLotusDlg::OnButton1()
{
// TODO: Add your control notification handler code here

switch(m_x/10)
{
case 0:
m_N1=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 1:
m_N2=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 2:
m_N3=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 3:
m_N4=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 4:
m_N5=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 5:
m_N6=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 6:
m_N7=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
}
UpdateData(FALSE);
}
void CLotusDlg::OnButton2()
{
// TODO: Add your control notification handler code here
m_x=0;
m_N1=0;
m_N2=0;
m_N3=0;
m_N4=0;
m_N5=0;
m_N6=0;
m_N7=0;
UpdateData(FALSE);
m_pProg.SetPos(1);
}
void CLotusDlg::OnOK()
{
CDialog::OnOK();
}

(二)自動搖號
將前面實現的手動搖號程序修改為自動定時搖號。
添加OnTimer消息映射函數:

//按搖號按鈕啟動搖號
void CLotusDlg::OnButton1()
{
SetTimer(1,2000,NULL);
}
void CLotusDlg::OnButton2()
{
m_x=0;
m_N1=0;
m_N2=0;
m_N3=0;
m_N4=0;
m_N5=0;
m_N6=0;
m_N7=0;
UpdateData(FALSE);
m_pProg.SetPos(0);
KillTimer(1);
}
void CLotusDlg::OnTimer(UINT nIDEvent)
{
switch(m_x/10)
{
case 0:
m_N1=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 1:
m_N2=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 2:
m_N3=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 3:
m_N4=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 4:
m_N5=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 5:
m_N6=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
case 6:
m_N7=rand()%36+1;
m_pProg.SetPos(m_x+=10);
break;
}
UpdateData(FALSE);
CDialog::OnTimer(nIDEvent);
}
void CLotusDlg::OnOK()
{
KillTimer(1);
CDialog::OnOK();
}
5. 注釋:
(1)產生隨機數的方法
函數unsigned int rand() 產生隨機數。
函數void srand(unsigned int seed) 設定隨機數產生器的種子,其中seed為隨機數產生器的種子,本例中用系統時鍾當前值作隨機數種子:
srand((unsigned)time(NULL));函數的
表達式rand()%36+1產生1-36之間的隨機數
(3) 定時器的使用方法
定時器的使用涉及OnTimer、SetTimer、KillTimer三個函數。
SetTimer用於設定定時時間和啟動定時器,其中第一個參數是定時編號,第二個參數是定時的毫秒數。本例中將1號定時器定時時間設定為2秒:
SetTimer(1,2000,NULL);
定時器啟動以後將持續工作,每到達一次定時時間即啟動一次OnTimer消息函數的執行。KillTimer的作用是停止指定定時器的工作。

3.
MFC單文檔應用程序實現舉例

創建單文檔應用程序的一般步驟:
利用AppWizard創建單文檔應用程序框架。
在文檔類中聲明保存文檔數據所需要數據對象。
完成文檔類的OnNewDocument函數,初始化新文檔。
完成文檔類的Serialize函數,保持和載入文檔數據。
完成視類的OnInitialUpdate函數,初始化顯示。
完成視類的OnDraw函數,顯示當前文檔內容。
在視類中加入可以使用戶編輯文檔數據所需的代碼。
本實驗指導通過以下4 個實驗循序漸進演示創建單文檔應用程序的基本操作,在前一個例子中演練過的操作,在後面的中出現時不再重復描述。
例1 一個簡單的單文檔應用程序——記事本程序
例2 簡單文本和圖形輸出
例3 利用定時器輸出滾動字幕
例4 文檔串列化編程
例1.
一個簡單的單文檔應用程序——記事本程序
1. 只要在AppWizard的Step 6將Base Class設置為EditView,AppWizard就自動完成了一個記事本程序的設計:

2. 運行程序,即可測試記事本的各種功能:

3.說明:
(1)打開Workshop中的Class視圖,可以看到,一個簡單的單文檔應用程序向導自動建立五個類:

向導自動建立的類
相應源文件
其他源文件
相應頭文件
其他頭文

③ VC單文檔程序,工具欄上添加靜態文本,已經實現添加Cstatic框,但該文如何設置文本框背景色

暈,CStatic是系統標準的文本框控制項啊,直接沒有背景色更改的辦法,必須通過間接方式:構造CStatic子類,利用增加其虛擬成員函數處理OnControlColor(名字類似把,記不太清了)以處理控制項重繪消息,在函數中,將背景色按需設置

④ MFC靜態文本控制項怎麼設置字體

靜態文本控制項static設置字體有兩種方式:

  1. 直接滑鼠右鍵點擊靜態文本控制項框,在彈出的屬性裡面font項進行更改;

  2. 調用MFC函數進行更改。

調用函數更改字體步驟及代碼如下:

  1. 首先通過GetDlgCtrlID獲取靜態文本控制項ID;

  2. 調用CFont類中的函數createpointfont創建字體;

  3. 將所創建的字體加入設備描述表。

if(pWnd->GetDlgCtrlID()==IDC_static)

{

CFont font;

font.CreatePointFont(200,"華文楷體");

pDC->SelectObject(&font);


⑤ vc靜態文本字體大小怎麼改變

CFont cfont; //這個是全局的。放到include的下面就可以了

//以下這一部分放到OnInitDialog()裡面。
cfont.CreateFont(16, //字體大小
0,0,0,FW_NORMAL,
FALSE,FALSE,
0,
ANSI_CHARSET, // nCharSet
OUT_DEFAULT_PRECIS, // nOutPrecision
CLIP_DEFAULT_PRECIS, // nClipPrecision
DEFAULT_QUALITY, // nQuality
DEFAULT_PITCH | FF_SWISS, "Arial"); // 字體
CWnd* pWnd = GetDlgItem(IDC_STATIC_TITLE); // 靜態文本的編號
pWnd->SetFont(&cfont);

⑥ 關於VC++靜態文本框 就是caption中的標題,我把IDC_STATIC後加了個1標題就不見了,因為要設置

當然了,因為你定義的那個靜態文本變數沒有初值,運行起來當然就看不到了
所以你它一個初始值吧
在對話框的構造函數里給它一個初始值,m_static = "static";

⑦ VC++6.0中如何在程序中改變對話框中靜態文本的內容

修改靜態文本控制項的ID,不能是IDC_STATIC,然後定義與它關聯的CString類對象,如果m_sta;
在程序運行的過程中,修改m_sta的值,再調用UpdateData(false)函數更新顯示
...
{
m_sta="正在連接資料庫,請稍候...\n";
UpdateData(false);
}
...
...
...
{
m_sta+="正在恢復資料庫,請稍候...\n";
UpdateData(false);
}
...

⑧ 在mfc中怎樣在工具條中添加靜態文本

在CMainFrame中加成員變數
CComboBox m_comboList;
CStatic m_static;
然後是OnCreate()中添加代碼,注釋掉的是添加下拉框的代碼,如下:
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CFrameWndEx::OnCreate(lpCreateStruct) == -1)
return -1;

BOOL bNameValid;
// 基於持久值設置視覺管理器和樣式
OnApplicationLook(theApp.m_nAppLook);

if (!m_wndMenuBar.Create(this))
{
TRACE0("未能創建菜單欄\n");
return -1; // 未能創建
}

m_wndMenuBar.SetPaneStyle(m_wndMenuBar.GetPaneStyle() | CBRS_SIZE_DYNAMIC | CBRS_TOOLTIPS | CBRS_FLYBY);

// 防止菜單欄在激活時獲得焦點
CMFCPopupMenu::SetForceMenuFocus(FALSE);

if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!m_wndToolBar.LoadToolBar(theApp.m_bHiColorIcons ? IDR_MAINFRAME_256 : IDR_MAINFRAME))
{
TRACE0("未能創建工具欄\n");
return -1; // 未能創建
}

if (!m_myToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!m_myToolBar.LoadToolBar(IDR_MYTOOLBAR ))
{
TRACE0("未能創建工具欄\n");
return -1; // 未能創建
}

CString strToolBarName;
bNameValid = strToolBarName.LoadString(IDS_TOOLBAR_STANDARD);
ASSERT(bNameValid);
m_wndToolBar.SetWindowText(strToolBarName);

CString strCustomize;
bNameValid = strCustomize.LoadString(IDS_TOOLBAR_CUSTOMIZE);
ASSERT(bNameValid);
m_wndToolBar.EnableCustomizeButton(TRUE, ID_VIEW_CUSTOMIZE, strCustomize);

// 允許用戶定義的工具欄操作:
InitUserToolbars(NULL, uiFirstUserToolBarId, uiLastUserToolBarId);

if (!m_wndStatusBar.Create(this))
{
TRACE0("未能創建狀態欄\n");
return -1; // 未能創建
}
m_wndStatusBar.SetIndicators(indicators, sizeof(indicators)/sizeof(UINT));

// TODO: 如果您不希望工具欄和菜單欄可停靠,請刪除這五行
m_wndMenuBar.EnableDocking(CBRS_ALIGN_ANY);
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
m_myToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockPane(&m_wndMenuBar);
DockPane(&m_wndToolBar);
DockPane(&m_myToolBar);

// 啟用 Visual Studio 2005 樣式停靠窗口行為
CDockingManager::SetDockingMode(DT_SMART);
// 啟用 Visual Studio 2005 樣式停靠窗口自動隱藏行為
EnableAutoHidePanes(CBRS_ALIGN_ANY);

// 啟用工具欄和停靠窗口菜單替換
EnablePaneMenu(TRUE, ID_VIEW_CUSTOMIZE, strCustomize, ID_VIEW_TOOLBAR);

// 啟用快速(按住 Alt 拖動)工具欄自定義
CMFCToolBar::EnableQuickCustomization();

// if (CMFCToolBar::GetUserImages() == NULL)
// {
// // 載入用戶定義的工具欄圖像
// if (m_UserImages.Load(_T(".\\UserImages.bmp")))
// {
// m_UserImages.SetImageSize(CSize(16, 16), FALSE);
// CMFCToolBar::SetUserImages(&m_UserImages);
// }
// }

// 啟用菜單個性化(最近使用的命令)
// TODO: 定義您自己的基本命令,確保每個下拉菜單至少有一個基本命令。
CList<UINT, UINT> lstBasicCommands;

lstBasicCommands.AddTail(ID_FILE_NEW);
lstBasicCommands.AddTail(ID_FILE_OPEN);
lstBasicCommands.AddTail(ID_FILE_SAVE);
lstBasicCommands.AddTail(ID_FILE_PRINT);
lstBasicCommands.AddTail(ID_APP_EXIT);
lstBasicCommands.AddTail(ID_EDIT_CUT);
lstBasicCommands.AddTail(ID_EDIT_PASTE);
lstBasicCommands.AddTail(ID_EDIT_UNDO);
lstBasicCommands.AddTail(ID_APP_ABOUT);
lstBasicCommands.AddTail(ID_VIEW_STATUS_BAR);
lstBasicCommands.AddTail(ID_VIEW_TOOLBAR);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2003);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_VS_2005);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2007_BLUE);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2007_SILVER);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2007_BLACK);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2007_AQUA);

CMFCToolBar::SetBasicCommands(lstBasicCommands);

int index = 0;
RECT rect;
//找到指定的工具項
while(m_myToolBar.GetItemID(index)!=ID_BUTTONCOMBO)
index++;
//設置指定工具項的寬度並獲取新的區域 80是寬度
m_myToolBar.SetButtonInfo(index, ID_BUTTONCOMBO, TBBS_SEPARATOR, 60);
m_myToolBar.GetItemRect(index, &rect);

//設置位置
// rect.top+=2;
// rect.bottom += 200;
rect.left = 0;
rect.top = 2;
rect.right = 60;
rect.bottom = 200;
// 創建並顯示控制項
if(!m_static.Create("static",WS_CHILD|WS_VISIBLE,rect,&m_myToolBar,100034))
return false;
m_static.ShowWindow(SW_SHOW);

// if(!m_comboList.Create(WS_CHILD|WS_VISIBLE| CBS_AUTOHSCROLL| CBS_DROPDOWNLIST | CBS_HASSTRINGS , rect,
// &m_myToolBar, ID_BUTTONCOMBO))
// {
// TRACE0("Failed to create combo-box\n");
// return FALSE;
// }
//
// //填充內容
//
// m_comboList.AddString("25%");
// m_comboList.AddString("50%");
// m_comboList.AddString("75%");
// m_comboList.AddString("100%");
// m_comboList.AddString("125%");
// m_comboList.AddString("150%");
// m_comboList.AddString("175%");
// m_comboList.AddString("200%");
//
// //選擇默認項
// m_comboList.SetCurSel(3);
// m_comboList.ShowWindow(SW_SHOW);

return 0;
}

⑨ 請問如何調整靜態文本字體和大小~VC對話框界面初學者請教

CFont
cfont;
//這個是全局的。放到include的下面就可以了
//以下這一部分放到OnInitDialog()裡面。
cfont.CreateFont(16,
//這個數字就是字體大小了
0,0,0,FW_NORMAL,
FALSE,FALSE,
0,
ANSI_CHARSET,
//
nCharSet
OUT_DEFAULT_PRECIS,
//
nOutPrecision
CLIP_DEFAULT_PRECIS,
//
nClipPrecision
DEFAULT_QUALITY,
//
nQuality
DEFAULT_PITCH
|
FF_SWISS,
"Arial");
CWnd*
pWnd
=
GetDlgItem(IDC_STATIC_TITLE);
pWnd->SetFont(&cfont);

⑩ C語言windows 開發修改靜態文本的標題屬性的函數是什麼

先獲取靜態文本框的句柄,然後setwindowtext

閱讀全文

與c工具箱靜態文本框相關的資料

熱點內容
暖氣片閥門兒向左是開向右是開 瀏覽:527
無錫軍青機械製造有限公司怎麼樣 瀏覽:776
儀表如何隔離 瀏覽:618
對開門冷藏櫃不製冷怎麼辦 瀏覽:282
根據圖1實驗裝置圖回答 瀏覽:349
銅與濃硝酸反應實驗裝置 瀏覽:564
滾子軸承兩個軸怎麼接 瀏覽:129
玉器雕刻用什麼機械設備 瀏覽:311
小丸工具箱提取字幕 瀏覽:860
機床各部分靜剛度曲線怎麼繪制 瀏覽:482
淋浴閥門有點漏水怎麼辦 瀏覽:638
倉庫小五金件的擺放要求 瀏覽:48
消防管道閥門用明桿閥門 瀏覽:917
檢查閥門不正確的方法是什麼意思 瀏覽:429
佛山祥盛五金製品有限公司招聘 瀏覽:423
高中化學課本實驗裝置圖 瀏覽:369
半液晶儀表怎麼實現地圖顯示 瀏覽:100
蒸發用的器材有什麼 瀏覽:286
機械圖圓後面向下箭頭什麼意思 瀏覽:657
曲靖家用電動工具批發 瀏覽:20