SDL & Object Pascal (Delphi) [2] ÏÔʾÖÐÎÄ×Ö·û
һЩ»ù´¡µÄÎÊÌâÎÒ²»ÔÙ׸ÊöÁË£¬²éÔİïÖúÎĵµ£¨Object Pascal SDL Doc.chm£©ÏÔÈ»±ÈÔÚÕâ¿´ÎÒºú³¶ºÏÊʵöࡣÄÇЩ»ÏñËØ£¬»ñÈ¡ÏñËØÐÅÏ¢£¬ÏÔʾBMPÎļþ¶àÊýʱºòÖ»Òª°ÑÄÇЩ´úÂë¸´ÖÆ¹ýÀ´»ù±¾¾ÍÄܹ¤×÷¡£ÏÂÃæËµµÄÊÇÔõÑùÏÔʾÖÐÎÄ¡£
ÆäʵSDL¼ÓÉÏttfÖ§³Öʱ£¨ÐèÒª½«¶ÔÓ¦µÄdllÎļþÌí¼Óµ½¹¤³ÌĿ¼ÀÊÇÍêÈ«¿ÉÒÔÏÔʾÖÐÎĵ쬼òÌåºÍ·±Ì嶼ûÎÊÌ⣨Object Pascal°æ±¾Ò²²»È±¹¦ÄÜ£©£¬µ«ÊÇÖ»ÄÜÓÃUnicode±àÂë¡£Õâ¾ÍÊÇ˵£¬Äã±ØÐëÑ¡ÔñÒ»¸öUnicode±àÂëÍêÕûµÄ×ÖÌåÎļþ£¨»òÕß˵ÖÁÉÙÄãÐèÒªµÄÄÇЩ×Ö·ûÊÇÍêÕûµÄ£©¡£WindowsÏÂÃæÕâÑùµÄ×ÖÌåÓкܶ࣬ÎÒÍÆ¼öµÄÓУº
¼òÌåÖÐÎÄ£ºËÎÌå´ó×Ö·û¼¯£¬Î¢ÈíÑźڣ»
·±ÌåÖÐÎÄ£ºÏ¸Ã÷Ì壬΢ÈíÕýºÚ£¬±ê¿¬Ìå¡£
ÕâЩ»ù±¾ÊÇÖÐÎĵØÇø×îÖØÒªµÄ¼¸ÖÖ×ÖÌå¡£Ò»¸öȱº¶¾ÍÊÇÓÃÓÚÏÔʾ¼òÌåÖÐÎĵĿ¬Ì壨ºÍÆäËû×ÖÌ壩ÓÅÐãµÄ²¢²»¶à¡£
Êä³öÖÐÎÄʱ£¬¿ÉÒÔÏÈдÕâÑùµÄÒ»¸ö×Ó³Ì×÷Ϊ»ù´¡£º
procedure DrawText(word: PUint16; x_pos, y_pos: integer; color: Uint32);
var
text: PSDL_Surface;
dest: TSDL_Rect;
begin
text := TTF_RenderUNICODE_blended(font, word, TSDL_Color(Color));
dest.x := x_pos;
dest.y := y_pos;
SDL_BlitSurface(text,nil, screen, @dest);
SDL_FreeSurface(text);
end;
screen¾ÍÊÇÒѾ¶¨ÒåºÃµÄÄǸöÖ÷ÆÁÄ»µÄ±ê¼Ç¡£fontÊÇÒ»¸öÖ¸Ïò×ÖÌåÎļþµÄÖ¸Õ룬¿ÉÒÔÕâÑù¶¨ÒåºÍ³õʼ»¯£º
È«¾Ö±äÁ¿£º
font: PTTF_Font;
ÔÚ³õʼ»¯×´Ì¬µÄ×Ó³ÌÖУº
TTF_Init;
font:=TTF_OpenFont('kaiu.ttf', 20);
µ±È»fontµÄ¶¨ÒåºÍ³õʼ»¯Ð´ÔÚDrawTextÀïÃæÒ²Ò»Ñù£¬Ö»ÊÇдÔÚÈ«¾Ö±äÁ¿ÀïÃæ¾Í¿ÉÒÔÖ»³õʼ»¯Ò»´Î£¬¿ÉÄÜ»áЧÂʸßһЩ¡£Í¬Ñù°ÑDrawTextÀïÃæÓõÄÄǸötextд³ÉÈ«¾Ö±äÁ¿Ò²ÊÇÒ»¸öÑ¡Ôñ¡£ÔÚ³ÌÐò½áÊøÊ±£¬»¹ÒªÊÍ·ÅÕâЩ×ÊÔ´¡£
kaiu¾ÍÊDZ꿬ÌåµÄÎļþÃû×Ö£¬20ÊÇ×ֺţ¬ÐèÒª°Ñ×ÖÌåÎļþÒ²·ÅÔÚ¹¤³ÌĿ¼ÀïÃæ¡£
TTF_RenderUNICODE_blendedÕâ¸öº¯ÊýÊÇÒÔblendedЧ¹ûÊä³öÎÄ×Ö£¬ÒÔTTF_RenderUNICODE¿ªÍ·µÄº¯ÊýÓÐ3¸ö£¬¶ÔÓ¦µÄÊDz»Í¬µÄЧ¹û¡£
SDL_BlitSurface´óÖ¿ÉÒÔÀí½âΪÔÚ“±íÃæ”ÉÏÔÙÌùÒ»²ã¡£
µ÷ÓÃDrawTextµÄ·½·¨ÈçÏ£º
str: WideString;
......
str:=' ÕâÊÇÒ»¸öÏÔʾÖÐÎĵIJâÊÔ';
DrawText(@str[1], 100, 100, $FFFFFF);
Sdl_UpdateRect(screen, 0, 0, screen.w, screen.h);
×¢ÒâÒ»¶¨ÒªÓÃWideString£¨»òPWideChar£©ÀàÐÍ£¡
strÇ°ÃæÎÒÌí¼ÓÁËÒ»¸ö¿Õ¸ñ¡£ÕâÊÇÒòΪÎÒ·¢ÏÖÓÐЩ×ÖÌåÖе
Ïà¹ØÎĵµ£º
²Ü×æÈ¨
¡¡¡¡¹¤¾ßÌõÊdzÌÐòԱϲ»¶²ÉÓõÄ×é¼þ£¬Ëü¾ßÓмòÃ÷Ö±¹ÛµÄÍâÐΣ¬Äܹ»·½±ãÓû§Ö´ÐÐ×î³£ÓõŦÄÜ¡£Èç¹ûÄãʹÓÃdelphi3±à³Ì£¬ÄÇô±¾ÈËÏòÄãÍÆ¼öcoolbar×é¼þ¡£ËüÊÇÒ»ÖÖ¹¦ÄܸüΪ·á¸»µÄ¹¤¾ßÌõ£¬ÓÃËü¿ÉÒÔʹ¶à¸ö´«Í³µÄ¹¤¾ßÌõ¡¢±à¼¿ò¡¢×éºÏÁбí¿ò¡¢Í¼ÏñÉõÖÁ¸ü¶àµÄ×é¼þ¼¯³Éµ½Ò»¸öͳһµÄcoolbarÖУ¬Ê¹µÃÓ¦ÓóÌÐò´°¿Ú¸üΪ½ô´Õ¡¢½çÃæ ......
³£ÓõÄBCB & Delphi º¯Êý
¹Ø¼ü×Ö£ºBCB,delphi,º¯Êý
×÷ÕߣºÂ³Ð¡°à ¸üУº2003-08-12 ä¯ÀÀ£º12686
·ÒëµÄ²»ºÃ£¬Çë¼ûÁ¡£
·Ò룺³С°à
Îļþ£º ActnList
CreateAction º¯Êý ´´½¨Ò»¸öÖ¸¶¨ÀàÐ͵ÄAction£¬ÏÔʾÔÚaction list editorÖС£
EnumRegisteredAction ¹ý³Ì ö¾ÙÒѾע²áµÄ ......
tableDB.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ ExtractFilePath(dir) +';Extended Properties=dBase 5.0;Persist Security Info=False;';
tableDB.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ExtractFilePath(dir)+';Extended Pro ......
ÀýÈçÒÔÏ´úÂ룺
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs;
type
TForm1 = class(TForm)
procedure one();
function two(x,y:integer):integer;
private
......