Trang 1 trên tổng số 3 123 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 30 kết quả

Đề tài: Cách đưa code vào tag, tag code nâng cao để highlight các ngôn ngữ!

  1. #1
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,749

    Mặc định Cách đưa code vào tag, tag code nâng cao để highlight các ngôn ngữ!

    Với tag code cơ bản đó là [code] tương ứng với biểu tượng là: {c}.

    Để đưa code vào tag code bạn cần thực hiện như hình vẽ sau:


    Kết quả thu được sau khi thực hiện là:
    Code:
    #include<stdio.h>
    #include<math.h>
    
    void main()
    {
        printf("Diễn đàn cộng đồng C Việt");
        printf("\nBạn đang ghé thăm cộng đồng lập trình lớn nhất Việt Nam");
    }
    Việc đưa code vào tag code là khá đơn giản, các bạn cố gắng để code vào trong tag code cho dễ xem hơn.

    Ngay sau bài viết này, Dr sẽ giới thiệu cách sử dụng tag code highlight nâng cao, để hiển thị các code C, C++, C#, Delphi, VB, VB.NET, .....
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  2. #2
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,749

    Mặc định Tag code cho các ngôn ngữ C, C++, C#, ....

    Hiện nay, diễn đàn cộng đồng C Việt hỗ trợ thêm một số tag code highlight cho một số ngôn ngữ sau: C, C++, C#, VB, VB.NET, Delphi, Pascal, SQL, ... Sau đây là cách sử dụng chúng:

    Ở bài trên chúng ta đã biết cách đưa code vào tag code. Để có thể hiện thị đích xác ngôn ngữ nào bạn chỉ cần thêm tên ngôn ngữ và tag code đó, như sau:

    Bạn muốn hiển thị một đoạn ngôn ngữ nào đó thì bạn bọc 2 đầu bằng tag code có dạng:
    [code=language_name]
    mã nguồn để ở đây
    [ /code]

    Các mẫu để hiển thị code như sau:
    [code=C]
    mã nguồn C để ở đây
    [ /code]

    [CODE=C++]
    mã nguồn C++ để ở đây
    [ /CODE]
    [code=CPP]
    mã nguồn C++ để ở đây
    [ /code]

    [code=VB.NET]
    mã nguồn VB.NET để ở đây
    [ /code]

    [code=Visual Basic.NET#]
    mã nguồn VB.NET để ở đây
    [ /code]

    [code=CSharp]
    mã nguồn C# để ở đây
    [ /code]

    [CODE=C#]
    mã nguồn C# để ở đây
    [ /CODE]
    -------------------------------------------------------------------------------------------------
    Tips: Khi bạn copy code, nếu nó có màu mà bạn muốn nó trở về dạng text thường thì các bạn sử dụng công cụ: Gỡ bỏ các định dạng văn bản, bằng cách sau đây:

    Bôi đen (selected) đoạn văn bản hoặc phần code bạn muốn gỡ bỏ định dạng, sau đó nhấn vào nút bấm có hình: , nằm ngay góc trên cùng bên trái của Editor

    Trong tag code nâng cao, Dr có thử nghiệm và đưa vào chức năng trỏ đến hyper-link giúp cho việc tham khảo thuận lợi và dễ dàng hơn. Nhưng khi bạn copy có thể bạn sẽ có khả năng copy luôn cả link đó, dẫn đến việc bạn sử dụng tag code nâng cao không như ý muốn. Để khắc phục tình trạng này, bạn có thể sử dụng công cụ: "Gỡ bỏ liên kết" như sau:

    Bạn bôi đen (on selected) đoạn code bạn đã copy, sau đó nhấn vào , mọi liên kết trong đoạn code được bôi đen đó sẽ bị loại bỏ.
    Tips: Nếu bạn copy code đưa vào trình soạn thảo nâng cao của diễn đàn mà không muốn nó copy cả các định dạng chữ, cũng như các hyper-link nói trên. Hãy sử dụng công cụ: "Chuyển chế độ trình soạn thảo" như sau:

    Ở góc phải phía trên trình soạn thảo có một nút bấm có hình nhìn hơi lõm xuống, di chcon trỏ chuột vào đó sẽ có dòng chữ: "Chuyển chế độ trình soạn thảo" hiện lên. Bạn nhấn vào đó, để nó trở về dạng bằng phẳng so với xung quanh là được.
    Chúc các bạn vui vẻ! Hãy giới thiệu cách này cho những người bạn của bạn khi họ gửi code của họ lên diễn đàn cộng đồng C Việt.
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  3. #3
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,749

    Danh sách các ngôn ngữ có thể gõ bằng nhiều cách khác nhau:

    Code:
    'ActionScript', 'ActionScript 2', 'ActionScript 2.0'
    'ActionScript 3', 'ActionScript 3.0'
    'Visual C#', 'Visual CSharp', 'C#', 'CSharp'
    'JavaScript', 'JavaScript 1.2'
    'Java ', 'Java 5'
    'VB.NET', 'Visual Basic .NET'
    'Visual C++', 'Visual C', 'VC', 'VC++'
    'VB', 'Visual Basic'
    'QT C++', 'CPP QT', 'C++ QT', 'QT-C++', 'QT-CPP', 'CPP-QT'
    'C++', 'CPP', 'CPlusPlus'
    'PHP', 'PHP4', 'PHP5'
    'ASM', 'Assembly'
    'C-MAC', 'C MAC', 'Objective C'
    'ASP.NET', 'ASPNET'
    'MySQL', 'My SQL'
    'HTML 4', 'HTML', 'HTML 4 Strict'
    'SQL', 'MSSQL'
    'Oracle SQL', 'Oracle 11'
    Ví dụ hiển thị code C:
    C Code:
    1. /* Bai tap 4_1 - Giải phương trình bậc 2: AX^2 + BX + C = 0   *
    2.  * Code lấy từ 500 bài tập C để làm mẫu                       */
    3. #include<stdio.h>
    4. #include<math.h>
    5.  
    6. void main()
    7. {
    8.   float a, b, c, delta;
    9.  
    10.   printf("\nGiai phuong trinh bac hai AX^2 + BX + C = 0");
    11.   printf("\nCho biet ba he so A B C : ");
    12.   scanf("%f%f%f", &a, &b, &c);
    13.  
    14.   delta = b * b - 4 * a * c; //Tính Delta [MAX]
    15.   if (delta<0)
    16.     printf("Phuong trinh vo nghiem");
    17.   else if (delta == 0)
    18.       printf("Phuong trinh co nghiem kep x1 = x2 = %f", -b/(2*a));
    19.   else
    20.   {
    21.     printf("Phuong trinh co hai nghiem phan biet\nx1 = %f", (-b + sqrt(delta))/(2*a));
    22.     printf("\nx2 = %f", (-b - sqrt(delta))/(2*a));
    23.   }
    24.   getch();
    25. }

    Ví dụ hiển thị code C++:
    C++ Code:
    1. /* Code quá tải toán tử gán dùng chung của Rox_rook  *
    2.  * Lấy làm mẫu cho hiển thị code C++                 */
    3. #include<iostream>
    4. #include<string>
    5. #include<typeinfo.h>
    6. #include<vector>
    7.  
    8. class OS{
    9. protected :
    10.     std::string label;
    11. public :
    12.     OS(std::string label):label(label){}
    13.     virtual OS& operator = (const OS& os) {
    14.         label = os.label;
    15.         return *this;
    16.     }
    17.     virtual void show(std::ostream &) const = 0;
    18. };
    19.  
    20. class Window : public OS {
    21. public :
    22.     Window(std::string wLabel):OS(wLabel){}
    23.     virtual Window& operator = (OS* ptr)
    24.     {
    25.         if(dynamic_cast<Window*>(ptr) != 0)
    26.             return *this;
    27.         else{
    28.             dynamic_cast<OS* >(ptr);
    29.             return *this;
    30.         }
    31.     }
    32.     virtual void show(std::ostream &os) const{
    33.         os << "OS : " << label << '\n';
    34.     }
    35. };
    36.  
    37. class Linux : public OS {
    38. public :
    39.     Linux(std::string wLabel):OS(wLabel){}
    40.     virtual Linux& operator = (OS* ptr)
    41.     {
    42.         if(dynamic_cast<Linux*>(ptr) != 0)
    43.             return *this;
    44.         else{
    45.             dynamic_cast<OS* >(ptr);
    46.             return *this;
    47.         }
    48.     }
    49.     virtual void show(std::ostream &os) const{
    50.         os << "OS : " << label << '\n';
    51.     }
    52. };
    53.  
    54. void showAll(std::vector<OS* > &operating_system)
    55. {
    56.     for(std::vector<OS* >::const_iterator iss = operating_system.begin();
    57.         iss != operating_system.end(); ++iss)
    58.     {
    59.         (*iss)->show(std::cout);
    60.     }
    61. }
    62.  
    63. int main()
    64. {
    65.     std::vector<OS* > operating_system;
    66.     operating_system.push_back(new Window("Vista"));
    67.     operating_system.push_back(new Window("XP"));
    68.     operating_system.push_back(new Window("Window98"));
    69.     operating_system.push_back(new Linux("Unbutu"));
    70.     operating_system.push_back(new Linux("Fedora"));
    71.     operating_system.push_back(new Linux("RedHat"));
    72.    
    73.     showAll(operating_system);
    74.     std::cout << "Hack product !!!^_^ \n\n";
    75.  
    76.     //Wow Vista đã biến thành RedHat, what the hack T_T!
    77.     operating_system[0] = operating_system[5];
    78.     showAll(operating_system);
    79.  
    80.     std::cout << '\n';
    81.     for(int x = 0; x < operating_system.size(); ++x){
    82.         std::cout << "Deleting : \n " << typeid(*operating_system[x]).name() << '\n';
    83.     }
    84.  
    85.     return 0;
    86. }

    Ví dụ hiển thị code C#:
    Visual C# Code:
    1. /* Nhận biết Keyboard trong Runtime  *
    2.  * Code lấy của bạn ..SiêuGà.NET::?? */
    3. #region Using Statements
    4. using System;
    5. using System.Collections.Generic;
    6. using Microsoft.Xna.Framework;
    7. using Microsoft.Xna.Framework.Audio;
    8. using Microsoft.Xna.Framework.Content;
    9. using Microsoft.Xna.Framework.Graphics;
    10. using Microsoft.Xna.Framework.Input;
    11. using Microsoft.Xna.Framework.Storage;
    12. #endregion
    13.  
    14. public class GameKeyTestClass : Microsoft.Xna.Framework.Game
    15. {
    16.     GraphicsDeviceManager graphics;
    17.     ContentManager content;
    18.  
    19.     KeyboardState oldState;
    20.  
    21.     public GameKeyTestClass ()
    22.     {
    23.         graphics = new GraphicsDeviceManager( this );
    24.         content = new ContentManager( Services );
    25.  
    26.         oldState = Keyboard.GetState();
    27.     }
    28.  
    29.     protected override void Initialize()
    30.     {
    31.  
    32.         base.Initialize();
    33.     }
    34.  
    35.     protected override void LoadGraphicsContent( bool loadAllContent )
    36.     {
    37.         if (loadAllContent)
    38.         {
    39.  
    40.         }
    41.  
    42.     }
    43.  
    44.     protected override void UnloadGraphicsContent( bool unloadAllContent )
    45.     {
    46.         if (unloadAllContent == true)
    47.         {
    48.             content.Unload();
    49.         }
    50.     }
    51.  
    52.     protected override void Update( GameTime gameTime )
    53.     {
    54.         // Mặc định thoát game trong Xbox và Win
    55.         if (GamePad.GetState( PlayerIndex.One ).Buttons.Back == ButtonState.Pressed)
    56.             this.Exit();
    57.  
    58.         UpdateInput();
    59.  
    60.         base.Update( gameTime );
    61.     }
    62.  
    63.     private void UpdateInput()
    64.     {
    65.         KeyboardState newState = Keyboard.GetState();
    66.  
    67.         // Kiểm tra xem Space có bị Press không
    68.         if (newState.IsKeyDown( Keys.Space ))
    69.         {
    70.             // Key Space được Press
    71.         }
    72.         // Nếu không thì kiểm tra xem nó có Down trước đó không?
    73.         // có thẻ release sau đó
    74.         else if (oldState.IsKeyDown( Keys.Space ))
    75.         {
    76.            // Space bị Release rồi
    77.         }
    78.  
    79.         oldState = newState;
    80.     }
    81.  
    82.     protected override void Draw( GameTime gameTime )
    83.     {
    84.         graphics.GraphicsDevice.Clear( Color.CornflowerBlue );
    85.  
    86.         base.Draw( gameTime );
    87.     }
    88. }

    Hay một ví dụ hiển thị code Delphi:
    Delphi Code:
    1. {# Một đoạn code của bác TQN}
    2. {$R-}
    3. unit CRT32;
    4. {# freeware}
    5. {# version 1.0.0127}
    6. {# Date 18.01.1997}
    7. {# Author Frank Zimmer}
    8. {# description
    9.  Copyright © 1997, Frank Zimmer, [email]100703.1602@compuserve.com[/email]
    10.  Fixes Copyright © 2001 Juancarlo Añez, [email]juanco@suigeneris.org[/email]
    11.  Version: 1.0.0119
    12.  Date:    18.01.1997
    13.  
    14.  an Implementation of Turbo Pascal CRT-Unit for Win32 Console Subsystem
    15.  tested with Windows NT 4.0
    16.  At Startup you get the Focus to the Console!!!!
    17.  
    18.  ( with * are not in the original Crt-Unit):
    19.  Procedure and Function:
    20.    ClrScr
    21.    ClrEol
    22.    WhereX
    23.    WhereY
    24.    GotoXY
    25.    InsLine
    26.    DelLine
    27.    HighVideo
    28.    LowVideo
    29.    NormVideo
    30.    TextBackground
    31.    TextColor
    32.    Delay             // use no processtime
    33.    KeyPressed
    34.    ReadKey           // use no processtime
    35.    Sound             // with Windows NT your could use the Variables SoundFrequenz, SoundDuration
    36.    NoSound
    37.    *TextAttribut     // Set TextBackground and TextColor at the same time, usefull for Lastmode
    38.    *FlushInputBuffer // Flush the Keyboard and all other Events
    39.    *ConsoleEnd       // output of 'Press any key' and wait for key input when not pipe
    40.    *Pipe             // True when the output is redirected to a pipe or a file
    41.  
    42.  Variables:
    43.    WindMin           // the min. WindowRect
    44.    WindMax           // the max. WindowRect
    45.    *ViewMax          // the max. ConsoleBuffer start at (1,1);
    46.    TextAttr          // Actual Attributes only by changing with this Routines
    47.    LastMode          // Last Attributes only by changing with this Routines
    48.    *SoundFrequenz    // with Windows NT your could use these Variables
    49.    *SoundDuration    // how long bells the speaker  -1 until ??, default = -1
    50.    *HConsoleInput    // the Input-handle;
    51.    *HConsoleOutput   // the Output-handle;
    52.    *HConsoleError    // the Error-handle;
    53.  
    54.  This Source is freeware, have fun :-)
    55.  
    56.  History
    57.    18.01.97   the first implementation
    58.    23.01.97   Sound, delay, Codepage inserted and setfocus to the console
    59.    24.01.97   Redirected status
    60. }
    61.  
    62. interface
    63. uses
    64.   Windows, Messages;
    65.  
    66. {$IFDEF WIN32}
    67. const
    68.   Intense = FOREGROUND_INTENSITY or BACKGROUND_INTENSITY;
    69.   Black = 0;
    70.   Blue = FOREGROUND_BLUE or BACKGROUND_BLUE;
    71.   Green = FOREGROUND_GREEN or BACKGROUND_GREEN;
    72.   Cyan = Blue and Green;
    73.   Red = FOREGROUND_RED or BACKGROUND_RED;
    74.   Magenta = Blue or Red;
    75.   Brown = Green or Red;
    76.   LightGray = Blue or Green or Red;
    77.   DarkGray = LightGray;
    78.   LightBlue = Blue or Intense;
    79.   LightGreen = Green or Intense;
    80.   LightCyan = Cyan or Intense;
    81.   LightRed = Red or Intense;
    82.   LightMagenta = Magenta or Intense;
    83.   Yellow = Brown or Intense;
    84.   White = LightGray or Intense;
    85.  
    86.   BackgroundMask = BACKGROUND_BLUE or BACKGROUND_GREEN or BACKGROUND_RED or BACKGROUND_INTENSITY;
    87.   ForegroundMask = FOREGROUND_BLUE or FOREGROUND_GREEN or FOREGROUND_RED or FOREGROUND_INTENSITY;
    88.  
    89. function WhereX: integer;
    90. function WhereY: integer;
    91. procedure ClrEol;
    92. procedure ClrScr;
    93. procedure InsLine;
    94. procedure DelLine;
    95. procedure GotoXY(const x, y: integer);
    96. procedure HighVideo;
    97. procedure LowVideo;
    98. procedure NormVideo;
    99. procedure TextBackground(const Color: word);
    100. procedure TextColor(const Color: word);
    101. procedure TextAttribut(const Color, Background: word);
    102. procedure Delay(const ms: integer);
    103. function KeyPressed: boolean;
    104. function ReadKey: Char;
    105. procedure Sound;
    106. procedure NoSound;
    107. procedure ConsoleEnd;
    108. procedure FlushInputBuffer;
    109. function Pipe: boolean;
    110.  
    111. procedure Restore;
    112.  
    113. procedure SetWindowTo(R: TSmallRect);
    114.  
    115. procedure More(const Text: string);
    116.  
    117. var
    118.   HConsoleInput: tHandle;
    119.   HConsoleOutput: thandle;
    120.   HConsoleError: Thandle;
    121.   WindMin: tcoord;
    122.   WindMax: tcoord;
    123.   ViewMax: tcoord;
    124.   TextAttr: Word;
    125.   LastMode: Word;
    126.   SoundFrequenz: Integer;
    127.   SoundDuration: Integer;
    128.  
    129. type
    130.   PD3InputRecord = ^TD3InputRecord;
    131.   TD3InputRecord = record
    132.     EventType: Word;
    133.     case Integer of
    134.       0: (KeyEvent: TKeyEventRecord);
    135.       1: (MouseEvent: TMouseEventRecord);
    136.       2: (WindowBufferSizeEvent: TWindowBufferSizeRecord);
    137.       3: (MenuEvent: TMenuEventRecord);
    138.       4: (FocusEvent: TFocusEventRecord);
    139.   end;
    140.  
    141. {$ENDIF win32}
    142.  
    143. implementation
    144. {$IFDEF win32}
    145. uses Classes, SysUtils;
    146.  
    147. var
    148.   StartAttr: word;
    149.   OldCP: integer;
    150.   CrtPipe: Boolean;
    151.   German: boolean;
    152.  
    153. procedure ClrEol;
    154. var
    155.   tC: tCoord;
    156.   Len, Nw: LongWord;
    157.   Cbi: TConsoleScreenBufferInfo;
    158. begin
    159.   GetConsoleScreenBufferInfo(HConsoleOutput, cbi);
    160.   len := cbi.dwsize.x - cbi.dwcursorposition.x;
    161.   tc.x := cbi.dwcursorposition.x;
    162.   tc.y := cbi.dwcursorposition.y;
    163.   FillConsoleOutputAttribute(HConsoleOutput, textattr, len, tc, nw);
    164.   FillConsoleOutputCharacter(HConsoleOutput, #32, len, tc, nw);
    165. end;

    Mọi người thấy thế nào? Có chỗ nào thiếu sót, mọi người thông báo để bổ sung nhé.
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  4. #4
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,749

    Nếu bạn muốn đưa ngôn ngữ nào lên, nếu nó không hỗ trợ highlight cho ngôn ngữ đó, nó sẽ trả về dạng tag code thường, không có highlight, nhưng các khoảng trống nó vẫn giữ nguyên.

    Ví dụ:

    Java Code:
    1. /*--------------------------------------------------
    2. * SharedTicker.java
    3. *
    4. * Example from the book:     Core J2ME Technology
    5. * Copyright John W. Muchow   [url]http://www.CoreJ2ME.com[/url]
    6. * You may use/modify for any non-commercial purpose
    7. *-------------------------------------------------*/
    8. import javax.microedition.midlet.*;
    9. import javax.microedition.lcdui.*;
    10.  
    11. public class SharedTicker extends MIDlet implements CommandListener
    12. {
    13.   private Display display;    // Reference to Display object
    14.   private List lsProducts;   // Main productlist
    15.   private Alert alHelp;      // Alert to show text and image
    16.   private Ticker tkSale;     // Ticker of what's on sale
    17.   private Command cmExit;    // Command to exit the MIDlet
    18.  
    19.   public SharedTicker()
    20.   {
    21.     display = Display.getDisplay(this);
    22.    
    23.     cmExit = new Command("Exit", Command.SCREEN, 1);
    24.  
    25.     tkSale = new Ticker("Current Sale: Torchiere Lamp only $29.00");
    26.  
    27.     lsProducts = new List("Products", Choice.IMPLICIT);
    28.     lsProducts.append("Floor Lamp", null);
    29.     lsProducts.append("Chandelier", null);
    30.     lsProducts.append("Help", null);    
    31.     lsProducts.addCommand(cmExit);
    32.     lsProducts.setCommandListener(this);
    33.     lsProducts.setTicker(tkSale);
    34.   }
    35.  
    36.   public void startApp()
    37.   {
    38.     display.setCurrent(lsProducts);
    39.   }
    40.  
    41.   public void pauseApp()
    42.   {
    43.   }
    44.  
    45.   public void destroyApp(boolean unconditional)
    46.   {
    47.   }
    48.  
    49.   public void showAlert()
    50.   {
    51.     try
    52.     {
    53.       // Create an image
    54.       Image im = Image.createImage("/help.png");
    55.  
    56.       // Create Alert, add text and image, no sound
    57.       alHelp = new Alert("Help Information",
    58.                           "Over 300 unique lighting products!",
    59.                           im, null);
    60.       alHelp.setTimeout(Alert.FOREVER);                          
    61.       alHelp.setTicker(tkSale);
    62.     }    
    63.     catch(Exception e)
    64.     {
    65.       System.out.println("Unable to read png image.");
    66.     }
    67.    
    68.     // Display the Alert. Once dismissed, return to product list
    69.     display.setCurrent(alHelp, lsProducts);      
    70.  
    71.   }
    72.  
    73.   public void commandAction(Command c, Displayable s)
    74.   {
    75.    
    76.     if (c == List.SELECT_COMMAND)
    77.     {
    78.       switch (lsProducts.getSelectedIndex())
    79.       {
    80.         case 0:
    81.           System.out.println("Floor Lamp selected");            
    82.           break;
    83.  
    84.         case 1:
    85.           System.out.println("Chandelier selected");            
    86.           break;
    87.          
    88.         case 2:
    89.           showAlert();
    90.           break;
    91.       }
    92.     }
    93.     else if (c == cmExit)
    94.     {
    95.       destroyApp(true);
    96.       notifyDestroyed();
    97.     }
    98.   }
    99. }

    Nếu bạn thấy có thiếu sót hoặc là cần thiết thế nào, các bạn cứ thoải mái góp ý. Xin cảm ơn!
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  5. #5
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,749

    Đã hoàn thành cái highlight cho Visual C++. Sau đây là ví dụ:
    Cú pháp:
    1. Hoặc [CODE=VC++] Đặt code Visual C++ ở đây[ /CODE]
    2. Hoặc [CODE=Visual C++] Đặt code Visual C++ ở đây[ /CODE]

    Visual C++ Code:
    1. #include<windows.h>
    2. LRESULT CALLBACK XulyMessage (HWND,UNIT,WPARAM,LPARAM);
    3. char szAppName [ ] = "Vidu";
    4. int WINAPI WinMain (HANDLE hInst, HANDLE hPrevInst,
    5. LPSTR lpszCmdLine, int nCmdShow)
    6. {
    7.     HWND hwnd;  MSG msg;
    8.     WNDCLASSEX wndclass;
    9.     wndclass.cbSize = sizeof(wndclass);
    10.     wndclass.style = CS_HREDRAW | CS_VREDRAW;
    11.     wndclass.lpfnWndProc = XulyMessage;
    12.     wndclass.cbClsExtra = 0;
    13.     wndclass.cbWndExtra = 0;
    14.     wndclass.hInstance = hInst;
    15.     wndclass.hIcon = LoadIcon (NULL, IDI_APPLICATION);
    16.     wndclass.hCursor = LoadCursor (NULL, IDC_ARROW);
    17.     wndclass.hbrBackground = GetStockObject (WHITE_BRUSH);
    18.     wndclass.lpszMenuName = NULL;
    19.     wndclass.lpszClassName = szAppName;
    20.     wndclass.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
    21.     RegisterClassEx(&wndclass);
    22.     hwnd = CreateWindow(szAppName,
    23.                     "Vi du mo dau",
    24.                     WS_OVERLAPPEDWINDOW,
    25.                     CW_USEDEFAULT, CW_USEDEFAULT,
    26.                     CW_USEDEFAULT, CW_USEDEFAULT,
    27.                     HWND_DESKTOP,
    28.                     NULL,
    29.                     hInst,
    30.                     NULL);
    31.     ShowWindow (hwnd, nCmdShow);
    32.     UpdateWindow (hwnd);
    33.     while (GetMessage (&msg, NULL, 0, 0))
    34.     {
    35.         TranslateMessage (&msg);
    36.         DispatchMessage (&msg);
    37. }
    38. return msg.wParam;
    39. }
    40. LRESULT CALLBACK XulyMessage (HWND hwnd, UINT iMsg,
    41. WPARAM wParam, LPARAM lParam)
    42. {
    43.     HDC hdc;
    44.     PAINTSTRUCT ps;
    45.     RECT rect;
    46.     switch (iMsg)
    47.     {
    48.         case WM_PAINT:
    49.             hdc = BeginPaint (hwnd, &ps);
    50.             GetClientRect (hwnd, &rect);
    51.             DrawText (hdc, "Lap trinh C for Win", -1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER);
    52.             EndPaint (hwnd, &ps);
    53.             break;
    54.         case WM_DESTROY:
    55.             PostQuitMessage(0);
    56.             break;
    57.         default:
    58.             return DefWindowProc (hwnd, iMsg, wParam, lParam);
    59. }
    60. return 0;
    61. }

    Chúc anh em vui vẻ hen!
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  6. #6
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,749

    Mặc định Cách đưa code vào tag, tag code nâng cao để highlight các ngôn ngữ!

    Kevin xin mở lại đề tài này để nhận các ý kiến và thông báo lỗi về module này, cùng các ý tưởng để làm nó tốt hơn, hiệu quả hơn. Nếu bạn nào phát hiện ra bất kỳ lỗi nào, xin thông báo để chúng tôi để chúng tôi tiến hành khắc phục sớm nhất có thể.

    Các bạn vui lòng không yêu cầu: xin, mua bán, trao đổi, ... về module này. Đây là tâm huyết Kevin muốn dành riêng cho các thành viên của cộng đồng C Việt, vì thế sẽ không có bất kỳ mức giá nào có thể làm động lòng được.

    Các bạn nên sử dụng chức năng này khi gửi source code lên cộng đồng C Việt. Điều này góp phần cho việc bảo vệ bài viết của cộng đồng C Việt không bị các công ty quảng cáo lừa đảo sử dụng công cụ copy bài viết tự động.

    Xin trân trọng cảm ơn!
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  7. #7
    Ngày gia nhập
    10 2010
    Bài viết
    25

    1 module hữu ích
    Góp ý 1 chút về cái VC++
    em thấy nên để các kiểu dữ liệu khác với chuẩn (dạng typedef ý) và các marco thành màu khác cho dễ nhìn chứ nhìn toàn màu xanh dương dễ nhầm lẫn và hơi chói mắt ^^

  8. #8
    Ngày gia nhập
    02 2008
    Bài viết
    31

    Sao mình tag code ASP.NET mà nó không tô màu lên được vậy?
    Số phận nghiệt ngã có thể khiến bạn bỏ cuộc, mọi người có thể nói với bạn là không thể- nhưng chính bạn mới là người quyết định có bỏ cuộc hay không- cho dù bất kì điều gì xảy ra.

  9. #9
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,749

    Ah, ngôn ngữ ASP.NET chưa được phát triển. Các bạn có thông tin về keywords, cú pháp của ASP.NET thì gửi cho Kevin nhé!

    @lequochoang2: Ok, Kevin sẽ tính toán để đổi màu các typedef
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  10. #10
    Ngày gia nhập
    03 2009
    Nơi ở
    %appdata%\Temp
    Bài viết
    819

    Mình toàn gõ thủ công và thấy chẳng vấn đề gì cả. Chắc tại dạo trước làm web gõ html nhiều
    .::[The best way to predict the future is to invent it]::.
    __________________________________________________ _ - Alan Kay -

Các đề tài tương tự

  1. Tại sao lại bỏ Store Proceduce nếu code theo hướng Code First trong MVC3
    Gửi bởi rogerminh2401 trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 5
    Bài viết cuối: 02-11-2012, 08:22 PM
  2. compiler Warning: Unreachable code và chạy sai trong khi code đúng. Vì sao?
    Gửi bởi lovemoney trong diễn đàn Thảo luận, góp ý code C/C++ của bạn
    Trả lời: 19
    Bài viết cuối: 19-01-2012, 10:02 PM
  3. Bài tập C++ Nhập code và name sv vào in ra thì name in đúng nhưng code thì in ra cả 2 code lẫn name
    Gửi bởi spacy0212 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 2
    Bài viết cuối: 27-09-2011, 08:47 AM
  4. Chuyển code Nested Dolls từ C sang code pascal
    Gửi bởi longago trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 1
    Bài viết cuối: 04-01-2011, 08:54 AM
  5. Code quản lý sinh viên bằng danh sách lối vòng. Giúp mình thay đổi code kế thừa?
    Gửi bởi caocanha trong diễn đàn Thảo luận, góp ý code C/C++ của bạn
    Trả lời: 6
    Bài viết cuối: 04-05-2009, 03:39 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn