ĐTVT K8C - CNTT - DH THÁI NGUYÊN
Chào mừng các bạn đến với
http://dtvtk8c.tk


Hãy đăng kí thành viên để dowload và cùng chia sẻ tài liệu bạn nhé!


Chuc cac ban vui ve!
ĐTVT K8C - CNTT - DH THÁI NGUYÊN
Chào mừng các bạn đến với
http://dtvtk8c.tk


Hãy đăng kí thành viên để dowload và cùng chia sẻ tài liệu bạn nhé!


Chuc cac ban vui ve!
ĐTVT K8C - CNTT - DH THÁI NGUYÊN
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

ĐTVT K8C - CNTT - DH THÁI NGUYÊN

***** Đại học công nghệ thông tin và truyền thông****
 
Trang ChínhTìm kiếmLatest imagesĐăng kýĐăng Nhập
 (199)
KIM JONG WOO (154)
vantoan2210 (97)
nguyen van luan (59)
ngancute (46)
nguyenhieu_ict_90 (39)
trexanh078 (30)
MrPrince (30)
bebu_dtvtk8c (29)
boygenerous (27)
♥ Top 20 Bài Viết Mới Nhất ♥
Quà Tặng Âm Nhạc
Cfviet Người yêu cầu:
Cfviet Vào lúc: 6/6/2012, 6:25 pm
Cfviet Gửi đến: »Tất cả các thành viên
Cfviet Người yêu cầu: my_dtvt_dtc
Cfviet Vào lúc: 5/5/2012, 10:21 am
Cfviet Gửi đến: chúc mọi người thi tốt trong kì thi nha^^ good luck.
Cfviet Người yêu cầu:
Cfviet Vào lúc: 28/3/2012, 12:46 pm
Cfviet Gửi đến: »Tất cả các thành viên
Cfviet Người yêu cầu: ngancute
Cfviet Vào lúc: 27/2/2012, 9:09 am
Cfviet Gửi đến: »Tất cả các thành viên
Cfviet Người yêu cầu: MrPrince
Cfviet Vào lúc: 20/12/2011, 7:34 pm
Cfviet Gửi đến: »Tất cả các thành viên

Cfviet Gủi Tặng Nhạc & Lời Nhắn   Click   Click

Lời nhắn:thi tốt nhé! các bạn lớp K8C
Lời nhắn:Thư giãn 1 tí bằng bài nhạc nhẹ nha.... Chúc Các Bạn Vui vẻ...
Lời nhắn:chúc cả nhà ngày mới tốt lành
Lời nhắn:Baby-Justin Bieber
♥ Dtvtk8c.tk ♥

Share | 

 

 Tieng Viet voi lap trinh C tren Windows

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down 
Tieng Viet voi lap trinh C tren Windows Link_public_galleries26/5/2011, 4:28 am

MrPrince


MrPrince

posts : 30
Points : 61
nick yahoo: : 65538
Ngày Tham Gia Diễn Đàn : 01/03/2011
Độ Tuổi : 33
Đến từ : Lập Thạch-Vĩnh Phúc

Bài gửiTiêu đề: Tieng Viet voi lap trinh C tren Windows

 
Tiếng Việt với "Lập trình C trên Windows"
Hiển thị tiếng Việt bằng cách dùng MFC, sau đây là một số bước thực hiện:

Trước hết, font của menu, của MesageBox là font hệ thống của Windows. Các ứng dụng chaỵ trên đó phải tuân theo qui định trên. Do đó sẽ không có font hệ thống của riêng ứng dụng. Do vậy, các bạn cần đổi font hệ thống khi muốn xuất hiện menu tiếng Việt.

Tuy nhiên chúng ta vẫn có thể thay đổi font của menu hay các thành phần khác mà không cần can thiệp vào font hệ thống bằng cách sau:

1. Với Message Box

Với Message Box thì các bạn có thể sử dụng Dialog thay thế. Muốn thay đổi font của nguyên Dialog Box bạn thực hiện như sau:

1. Click phải vào Dialog và chọn Properties

2. Nhấn nút font

Chọn font thích hợp.

Tuy nhiên bạn chỉ đổi được font của các text box… chứ phần Caption thì nó đổi không được.

Bạn có thể lách chỗ này bằng cách vẽ một dòng chữ đè lên vùng đó. Chú ý, bạn phải vẽ trong WM_NCPAINT.

Tuy nhiên, Tôi nghĩ hiện nay bạn nên dùng font VK Sans Serif. Đây là font của VietKey nên chắc máy nào cũng có cả. Và nó là một dạng font TCVN3 nên rất dễ làm việc.

Còn một cách nữa là sử dụng hàm MessageBoxW

2. Với menu:

Các bạn nên thực hiện “chiêu” sau:

Mở file *.rc (Nếu project của bạn là ABC thì file đó là ABC.rc). Biên soạn lại menu thành tiếng Việt UNICODE bằng NotePad, rồi lưu lại file đó với thuộc tính UNIODE

Khi đó bạn sẽ bị cảnh báo lỗi khi vào VC++ nhưng không sao. Khi bạn chạy thì menu sẽ xuất hiện Tiếng Việt

3. Với caption:

Đây là phần khó nhất của việc hiển thị tiếng Việt trên giao diện chương trình. Phương án của Tôi đưa ra ở đây là các bạn nên xử lý trong sự kiện WM_NCPAINT

4. Phụ lục:

Cách tạo một project có menu và caption bằng tiếng Việt

1. Sử dụng Wizard để tạo một chương trình có tên TestViet dạng Win32 Application.

2. Tìm tập tin TestViet.rc và mở tập tin này bằng Notepad hay chương trình soạn thảo file text nào đó cũng được

3. Sửa phần menu trong tập tin TestViet.rc lại lại như hình sau

4. Sau đó chọn Save As với Encoding là Unicode

5. Chạy thử chương trình. Bạn thấy menu có tiếng Việt 100%

6. Bây giờ, chúng ta sẽ hiển thị tiếng Việt trên thanh Caption. Đầu tiên chúng ta sẽ tạo một chuỗi UNICODE trong resource.

Mở file TestViet.rc và chèn vào dòng IDS_STRING1 "Chương trình tiếng Việt" như hình dưới

IDS_STRING1 được định nghĩa trong file resource.h như sau

7. Sau đó, các bạn viết thêm vào chương trình một hàm[1]

void DrwCaption(HWND hWnd, bool fActive)

{

HDC dc; // Ma khung ve

COLORREF rgbText; // Mau chu

COLORREF rgbBkGrnd; // Mau nen

LOGFONT lf; // Thong tin ve font chu

HFONT font; // Ma Font

WCHAR wCaption[MAX_LOADSTRING]; // Tieu de thanh caption

dc = GetWindowDC(hWnd); // Lay ma khung ve cua cua so

// Kiem tra trang thai cua so de chon mau thich hop

if (fActive)

{ rgbText = GetSysColor(COLOR_CAPTIONTEXT);
rgbBkGrnd = GetSysColor(COLOR_ACTIVECAPTION);

}

else

{ rgbText = GetSysColor(COLOR_INACTIVECAPTIONTEXT);

rgbBkGrnd = GetSysColor(COLOR_INACTIVECAPTION);

}

// Dat mau nen va mau chu cho cua so

SetTextColor(dc, rgbText);

SetBkColor(dc, rgbBkGrnd);

// Ve chu o che do trong suot (khong can den mau nen)

SetBkMode(dc, OPAQUE); //TRANSPARENT

// Chuan bi thong tin ve Font chu

FillMemory(&lf, sizeof(lf), 0);

lf.lfHeight = 15; // Kich thuoc Font

lf.lfCharSet = ANSI_CHARSET;

lf.lfQuality = DEFAULT_QUALITY;

lf.lfClipPrecision = CLIP_LH_ANGLES | CLIP_STROKE_PRECIS;

lf.lfPitchAndFamily = FF_SWISS;

strcpy(lf.lfFaceName, "Arial"); // Ten Font

// Tao Font chu de ve dua tren cac thong tin da thiet lap

font = CreateFontIndirect(&lf);

// Chon font chu Arial vao khung ve va luu lai font chu cu

font = (HFONT)SelectObject(dc, font);

// Dat tieu de va ve chuoi tren thanh caption

LoadStringW(hInst,IDS_STRING1,wCaption,MAX_LOADSTRING);

TextOutW(dc, 20, 5, wCaption, 23);

// Dat Font chu cu tra lai cho khung ve

font = (HFONT)SelectObject(dc, font);

// Xoa doi tuong Font chu, giai phong tai nguyen cho he thong

DeleteObject(font);

// Tra lai bo dieu khien khung ve cho Windows

ReleaseDC(hWnd, dc);

}

8. Tiếp theo, bạn viết lệnh cho 2 thông điệp WM_NCPAINT

case WM_NCPAINT[2]:

DefWindowProc(hWnd, message, wParam, lParam);

fActive = (hWnd == GetActiveWindow());

DrwCaption(hWnd, fActive);

break;

case WM_NCACTIVATE:

DefWindowProc(hWnd, message, wParam, lParam);

fActive = (wParam != 0);

DrwCaption(hWnd, fActive);

break;

9. Cuối cùng, bạn chạy thử chương trình

Đến đây thì chương trình của các bạn đã hiển thị được tiếng Việt rồi , không khó chút nào phải không các bạn . Chúc các bạn thành công.

Các bạn có thể download chương trình tiếng Việt mẫu ở đây : TViet.Zip



 

Tieng Viet voi lap trinh C tren Windows

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang 
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
ĐTVT K8C - CNTT - DH THÁI NGUYÊN :: HỎI ĐÁP VÀ TRAO ĐỔI! :: -‘๑’- TRAO ĐỔI HỌC TẬP -‘๑’--

♫ : ♥ DTVT K8C ♥
(¯`'•.¸º-:¦:-†Vì Một Tập Thể Vững Đoàn Kết & Vững Mạnhº-:¦:-†♥¸.•'´¯)
Chúc Các Bạn Luôn Vui Vẻ
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥



Note:Diễn đàn hiển thị tốt nhất trên firefox!
Create a forum on Forumotion | Khoa học | Giáo dục, giảng dạy | ©phpBB | Free forum support | Báo cáo lạm dụng | Cookies | Thảo luận mới nhất