<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-36597984</id><updated>2012-01-23T08:46:18.860+08:00</updated><category term='programming article'/><category term='tips'/><category term='shortcuts'/><title type='text'>Delphi's Programming Resources, Tips, Trick, and Free Stuff</title><subtitle type='html'>Welcome to my delphi programming page about a lot of miracles around Delphi programming and environtment, &lt;br /&gt;
Feel enjoy to read, 
and don't forget to post some comments if you like
&lt;br /&gt;
(Take a moment here to see the computer world in Delphi programming spectacles)</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://delphimiracles.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://delphimiracles.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Hary</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://bp1.blogger.com/_9sCVJSEmDMc/SHlwuZ-B1pI/AAAAAAAAABY/orNmGUh4zYs/S220/kungfu_001.bmp'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>10</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-36597984.post-1336603752236730610</id><published>2007-02-03T12:50:00.000+08:00</published><updated>2007-02-03T13:13:53.564+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming article'/><title type='text'>Another Way to Draw Tiled Image to a Canvas</title><content type='html'>&lt;span id="ArticleContent"&gt;&lt;b&gt;:: &lt;u&gt;Counted Tile Image Draw&lt;/u&gt; ::&lt;br /&gt;&lt;br /&gt;Question/Problem/Abstract:&lt;/b&gt;&lt;br /&gt;&lt;div style="margin: 10px 20px;"&gt;How we can get a counted tiling image on a canvas ?&lt;br /&gt;counted as TileX (Horizontally = columns) and TileY(Vertically = lines)&lt;br /&gt;Eg: TileX = 3, TileY = 3, so we can get a 3x3 tiled image on a canvas&lt;/div&gt;&lt;/span&gt;&lt;br /&gt;&lt;span id="ArticleContent"&gt;&lt;b&gt;Answer:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="margin: 10px 20px 20px; font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;procedure CountedTileImage(const aPicture: TPicture;&lt;br /&gt;  const aTileX, aTileY: Integer; destCanvas: TCanvas;&lt;br /&gt;  const destWidth, destHeight: Integer);&lt;br /&gt;var x, y, tx, ty: integer;&lt;br /&gt;    src, dst: TBitmap;&lt;br /&gt;    myRect: TRect;&lt;br /&gt;begin&lt;br /&gt;  if (not aPicture.Graphic.Empty) and (aPicture.Graphic &lt;&gt; nil) then&lt;br /&gt;  begin&lt;br /&gt;    src := TBitmap.Create;&lt;br /&gt;    try&lt;br /&gt;      src.Assign(aPicture.Graphic);&lt;br /&gt;      dst := TBitmap.Create;&lt;br /&gt;      try&lt;br /&gt;        dst.Width  := aTileX * aPicture.Graphic.Width;&lt;br /&gt;        dst.Height := aTileY * aPicture.Graphic.Height;&lt;br /&gt;        y := 0;&lt;br /&gt;        ty := 1;&lt;br /&gt;        while (ty &lt;= aTileY) do begin&lt;br /&gt;          x := 0;&lt;br /&gt;          tx := 1;&lt;br /&gt;          while (tx &lt;= aTileX) do begin&lt;br /&gt;            myRect := Rect(x, y, x+src.Width, y+src.Height);&lt;br /&gt;            dst.Canvas.CopyRect(myRect, src.Canvas, Rect(0, 0, src.Width, src.Height));&lt;br /&gt;            x := x + src.Width;&lt;br /&gt;            tx := tx + 1;&lt;br /&gt;          end;&lt;br /&gt;          y := y + src.Height;&lt;br /&gt;          ty := ty + 1;&lt;br /&gt;        end;&lt;br /&gt;      finally&lt;br /&gt;        destCanvas.StretchDraw(Rect(0,0,destWidth,destHeight), dst);&lt;br /&gt;        dst.Free;&lt;br /&gt;      end;&lt;br /&gt;    finally&lt;br /&gt;      src.Free;&lt;br /&gt;    end;&lt;br /&gt;  end;&lt;br /&gt;end;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Have a good time&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36597984-1336603752236730610?l=delphimiracles.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://delphimiracles.blogspot.com/feeds/1336603752236730610/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36597984&amp;postID=1336603752236730610' title='41 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/1336603752236730610'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/1336603752236730610'/><link rel='alternate' type='text/html' href='http://delphimiracles.blogspot.com/2007/02/another-way-to-draw-tiled-image-to.html' title='Another Way to Draw Tiled Image to a Canvas'/><author><name>Hary</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://bp1.blogger.com/_9sCVJSEmDMc/SHlwuZ-B1pI/AAAAAAAAABY/orNmGUh4zYs/S220/kungfu_001.bmp'/></author><thr:total>41</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36597984.post-3553221456432887729</id><published>2007-01-21T23:04:00.001+08:00</published><updated>2007-02-03T21:55:26.851+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><title type='text'>Zoom-In and Zoom-Out Text in a TRichEdit [Undocumented Feature of TRichEdit]</title><content type='html'>&lt;span id="ArticleContent"&gt;&lt;b&gt;Question/Problem/Abstract:&lt;/b&gt;&lt;br /&gt;&lt;div style="margin: 10px 20px;"&gt;» How to do Zoom-In and Zoom-Out Text like in MS-Word&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;Answer:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="margin: 10px 20px 20px; font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;To do zoom(in/out) of a Text&lt;br /&gt;we can use TRichEdit.&lt;br /&gt;TRichEdit in Default, has the ability to Zoom-In or Zoom-Out all the text within (but only in Run-Time)&lt;br /&gt;&lt;br /&gt;So, the steps :&lt;br /&gt;1. Put TRichEdit on the Form&lt;br /&gt;2. Type your text in it (in TRichEdit)&lt;br /&gt;3. Compile your application&lt;br /&gt;4. To do Zoom-In / Zoom-Out,&lt;br /&gt;just Click the left button mouse&lt;br /&gt;combine with mouse-scroll-up or mouse-scroll-down&lt;br /&gt;5. Look at the result/effect to the text in the TRichEdit&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ps: I use Delphi 7. But i think, it'll work too with previous version&lt;br /&gt;&lt;br /&gt;----------------&lt;br /&gt;Have a good time.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;copy of this article is located @ &lt;a href="http://www.delphi3000.com/articles/article_4648.asp"&gt;http://www.delphi3000.com/articles/article_4648.asp&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36597984-3553221456432887729?l=delphimiracles.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://delphimiracles.blogspot.com/feeds/3553221456432887729/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36597984&amp;postID=3553221456432887729' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/3553221456432887729'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/3553221456432887729'/><link rel='alternate' type='text/html' href='http://delphimiracles.blogspot.com/2007/01/zoom-in-and-zoom-out-text-in-trichedit_21.html' title='Zoom-In and Zoom-Out Text in a TRichEdit &lt;br /&gt;[Undocumented Feature of TRichEdit]'/><author><name>Hary</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://bp1.blogger.com/_9sCVJSEmDMc/SHlwuZ-B1pI/AAAAAAAAABY/orNmGUh4zYs/S220/kungfu_001.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36597984.post-8554131817234855882</id><published>2006-12-12T23:31:00.000+08:00</published><updated>2006-12-12T23:53:53.344+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='shortcuts'/><title type='text'>:: Delphi Editor [IDE] Shortcuts (All)</title><content type='html'>Shortcuts for Delphi's Editor (IDE)&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;&lt;br /&gt;Shortcut&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;    Action or command&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;-----------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;F1&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;    Help|Topic Search&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;Ctrl+F1&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;    Help|Topic Search&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;F3&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;    Search|Search Again&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;Ctrl+E&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;    Search|Incremental Search&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;Ctrl+F &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;   Search|Find&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;Ctrl+I&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;    Inserts a tab character&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;Ctrl+j &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;   Templates pop-up menu&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;Ctrl+N&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;    Inserts a new line&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;Ctrl+P&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;    Causes next character to be interpreted as an ASCII sequence&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;Ctrl+R&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;     Search|Replace&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;Ctrl+S&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;    File|Save&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;Ctrl+T&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;    Deletes a word&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;Ctrl+Y&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;    Deletes a line&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;Ctrl+Z&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;    Edit|Undo&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;Ctrl+&lt;/span&gt;&lt;space  style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;space&gt;&lt;/space&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;[space bar]&lt;/span&gt;    Code Completion pop-up window&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Shift+g   &lt;/span&gt; Inserts a new Globally Unique Identifier (GUID) (Delphi)&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Shift+I   &lt;/span&gt; Indents block&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Shift+U&lt;/span&gt;    Outdents block&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Shift+Y&lt;/span&gt;    Deletes to the end of a line&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Shift+Z&lt;/span&gt;    Edit|Redo&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Shift+[space bar]&lt;/span&gt;&lt;space&gt;&lt;space&gt;    Code Parameters pop-up window&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;End&lt;/span&gt;     Moves to the end of a line&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Home&lt;/span&gt;    Moves to the start of a line&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Left Arrow&lt;/span&gt;    Moves one word left&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Right Arrow&lt;/span&gt;    Moves one word right&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Tab&lt;/span&gt;     Moves to the next code page (or file)&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Shift+Tab&lt;/span&gt;    Moves to the previous code page (or file)&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Backspace&lt;/span&gt;    Deletes the word to the right of the cursor&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Home&lt;/span&gt;    Moves to the top of a file&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+End&lt;/span&gt;     Moves to the end of a file&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Del&lt;/span&gt;     Deletes a currently selected block&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+PgDn&lt;/span&gt;    Moves to the bottom of a screen&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+PgUp&lt;/span&gt;    Moves to the top of a screen&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Up&lt;/span&gt; Arrow    Scrolls up one line&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Down&lt;/span&gt; Arrow    Scrolls down one line&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Enter&lt;/span&gt;    Opens file at cursor&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Shift+Tab&lt;/span&gt;     Moves the cursor to the left one tab position&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Shift+Backspace&lt;/span&gt;    Deletes the character to the left of the cursor&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Shift+Left Arrow&lt;/span&gt;    Selects the word to the left of the cursor&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Shift+Right Arrow&lt;/span&gt;    Selects the word to the right of the cursor&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Shift+Home&lt;/span&gt;    Selects from the cursor position to the start of the current file&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Shift+End&lt;/span&gt;     Selects from the cursor position to the end of the current file&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Shift+PgDn&lt;/span&gt;    Selects from the cursor position to the bottom of the screen&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Shift+PgUp&lt;/span&gt;    Selects from the cursor position to the top of the screen&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Shift+Tab&lt;/span&gt;    Moves to the previous page&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Shift+Alt+arrow&lt;/span&gt;    Selects column-oriented blocks&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Click+Alt+mousemove&lt;/span&gt;    Selects column-oriented blocks&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+O+C&lt;/span&gt;    Turns on column blocking&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+O+K&lt;/span&gt;    Turns off column blocking&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Alt+Backspace&lt;/span&gt;    Edit|Undo&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Alt+Page Down&lt;/span&gt;    Goes to the next tab&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Alt+Page Up&lt;/span&gt;    Goes to the previous tab&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Alt+Shift+Backspace&lt;/span&gt;    Edit|Redo&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Alt+Shift+Left Arrow&lt;/span&gt;    Selects the column to the left of the cursor&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Alt+Shift+Right Arrow&lt;/span&gt;    Selects the column to the right of the cursor&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Alt+Shift+Up Arrow&lt;/span&gt;    Moves the cursor up one line and selects the column from the left of the starting cursor position&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Alt+Shift+Down Arrow&lt;/span&gt;    Moves the cursor down one line and selects the column from the left of the starting cursor position&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Alt+Shift+Page Up&lt;/span&gt;    Moves the cursor up one screen and selects the column from the left of the starting cursor position&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Alt+Shift+Page Down&lt;/span&gt;    Moves the cursor down one line and selects the column from the right of the starting cursor position&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Alt+Shift+End&lt;/span&gt;    Selects the column from the cursor position to the end of the current line&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Alt+Shift+Home&lt;/span&gt;    Selects the column from the cursor position to the start of the current line&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Alt+Shift+Left Arrow&lt;/span&gt;    Selects the column to the left of the cursor&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Alt+Shift+Right Arrow&lt;/span&gt;    Selects the column to the right of the cursor&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Alt+Shift+Home&lt;/span&gt;    Selects the column from the cursor position to the start of the current file&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Alt+Shift+End&lt;/span&gt;    Selects the column from the cursor position to the end of the current file&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Alt+Shift+Page Up&lt;/span&gt;    Selects the column from the cursor position to the bottom of the screen&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Alt+Shift+Page Down&lt;/span&gt;    Selects the column from the cursor position to the top of the screen&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;You should read this too :&lt;/span&gt;&lt;br /&gt;&lt;a href="http://h4rypdelphi.blogspot.com/2006/12/delphi-shortcuts-3.html"&gt;» Delphi Shortcuts for block commands&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/space&gt;&lt;/space&gt;&lt;/space&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36597984-8554131817234855882?l=delphimiracles.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://delphimiracles.blogspot.com/feeds/8554131817234855882/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36597984&amp;postID=8554131817234855882' title='14 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/8554131817234855882'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/8554131817234855882'/><link rel='alternate' type='text/html' href='http://delphimiracles.blogspot.com/2006/12/delphi-editor-ide-shortcuts-all.html' title=':: Delphi Editor [IDE] Shortcuts (All)'/><author><name>Hary</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://bp1.blogger.com/_9sCVJSEmDMc/SHlwuZ-B1pI/AAAAAAAAABY/orNmGUh4zYs/S220/kungfu_001.bmp'/></author><thr:total>14</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36597984.post-4073649074176423440</id><published>2006-12-02T00:07:00.000+08:00</published><updated>2006-12-12T23:49:00.074+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='shortcuts'/><title type='text'>:: Delphi Shortcuts [Block Command]</title><content type='html'>&lt;span&gt;In my previous post about Delphi's shortcuts,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;I didn't group it into its category.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;From now on, I'll post it into my category definition.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;For the 1st move, I tried to figure out&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;all the shortcuts that lies on "Block" commands&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="margin-top: 10px; font-family: trebuchet ms;"&gt;&lt;u style="font-weight: bold;"&gt;Here is the list :&lt;/u&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;Ctrl+K+B &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Marks the beginning of a block&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+K+C&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Copies a selected block&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+K+H&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Hides/shows a selected block&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+K+I&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Indents a block by an amount specified&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+K+U&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Outdents a block by an amount specified&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;Ctrl+K+K &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Marks the end of a block&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+K+L&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt; Marks the current line as a block&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+K+N&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Changes a block to uppercase&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+K+O&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Changes a block to lowercase&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;Ctrl+K+P &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Prints selected block&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+K+R&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Reads a block from a file&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+K+T&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Marks a word as a block&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+K+V&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Moves a selected block&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+K+W&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Writes a selected block to a file&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+K+Y&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Deletes a selected block&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+O+C&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Turns on column blocking&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+O+I&lt;/span&gt;  &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Marks an inclusive block&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+O+K&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Turns off column blocking&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+O+L&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Marks a line as a block&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Shift+Alt+arrow&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Selects column-oriented blocks&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Click+Alt+mousemove&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Selects column-oriented blocks&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Q+B&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Moves to the beginning of a block selected&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;Ctrl+Q+K&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;Moves to the end of a block selected&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-family:trebuchet ms;" &gt;Enjoy it.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Previous post about shortcuts :&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);font-family:trebuchet ms;font-size:130%;"  &gt;» &lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);font-size:130%;" &gt;&lt;a style="font-family: trebuchet ms;" href="http://h4rypdelphi.blogspot.com/2006/10/delphi-ides-shortcuts-1.html"&gt;Delphi IDE's Shortcuts #1&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36597984-4073649074176423440?l=delphimiracles.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://delphimiracles.blogspot.com/feeds/4073649074176423440/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36597984&amp;postID=4073649074176423440' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/4073649074176423440'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/4073649074176423440'/><link rel='alternate' type='text/html' href='http://delphimiracles.blogspot.com/2006/12/delphi-shortcuts-3.html' title=':: Delphi Shortcuts [Block Command]'/><author><name>Hary</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://bp1.blogger.com/_9sCVJSEmDMc/SHlwuZ-B1pI/AAAAAAAAABY/orNmGUh4zYs/S220/kungfu_001.bmp'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36597984.post-2725410959813520661</id><published>2006-11-25T01:53:00.000+08:00</published><updated>2006-11-25T02:07:39.805+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming article'/><title type='text'>:: Displaying Month Names in Indonesian or Other Language Using FormatDateTime Function</title><content type='html'>&lt;span style="font-style: italic;"&gt;» FormatDateTime Function&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Category:&lt;/b&gt;&lt;br /&gt;&lt;div style="margin: 10px 20px;"&gt;» DateTime &amp; System&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span id="ArticleContent"&gt;&lt;b&gt;Question/Problem/Abstract:&lt;/b&gt;&lt;br /&gt;&lt;div style="margin: 10px 20px;"&gt;» How we can display long month names in a specific language, eg Indonesia&lt;br /&gt;So, the result will be like this : today is 25 Nopember 2006&lt;/div&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;Answer:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="margin: 10px 20px 20px; font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;Actually, that's quiet simple to do that&lt;br /&gt;You only need to replace the default (Delphi) "LongMonthNames" constants with the preferable any language you desire.&lt;br /&gt;&lt;br /&gt;For this example, I want to display a specific date into Indonesian Date Format (dd MMMM yyyy)&lt;br /&gt;&lt;br /&gt;Which,&lt;br /&gt;» January is Januari in Indonesian&lt;br /&gt;» February is Februari&lt;br /&gt;» March is Maret&lt;br /&gt;» April is April&lt;br /&gt;» May is Mei&lt;br /&gt;» June is Juni&lt;br /&gt;» July is Juli&lt;br /&gt;» August is Agustus&lt;br /&gt;» September is September (unchanged)&lt;br /&gt;» October is Oktober&lt;br /&gt;» November is Nopember&lt;br /&gt;» December is Desember&lt;br /&gt;&lt;br /&gt;The example code would be like this :&lt;br /&gt;-------------------------------------&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;unit Unit1;&lt;br /&gt;&lt;br /&gt;interface&lt;br /&gt;&lt;br /&gt;uses&lt;br /&gt;  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,&lt;br /&gt;  Dialogs, ComCtrls, StdCtrls;&lt;br /&gt;&lt;br /&gt;type&lt;br /&gt;  TForm1 = class(TForm)&lt;br /&gt;    DateTimePicker1: TDateTimePicker;&lt;br /&gt;    Button1: TButton;&lt;br /&gt;    procedure FormCreate(Sender: TObject);&lt;br /&gt;    procedure Button1Click(Sender: TObject);&lt;br /&gt;  private&lt;br /&gt;    { Private declarations }&lt;br /&gt;  public&lt;br /&gt;    { Public declarations }&lt;br /&gt;  end;&lt;br /&gt;&lt;br /&gt;var&lt;br /&gt;  Form1: TForm1;&lt;br /&gt;&lt;br /&gt;  // English:&lt;br /&gt;  //   this variable ("namaBulan") is used to replace month names' string&lt;br /&gt;  //   from English into Indonesian&lt;br /&gt;  // this variable is used in "replaceLongMonthNamesWithIndonesian" procedure&lt;br /&gt;&lt;br /&gt;  // dipakai untuk menggantikan string nama bulan dr bhs Inggris ke Indonesia&lt;br /&gt;  // digunakan dalam procedure "replaceLongMonthNamesWithIndonesian"&lt;br /&gt;  namaBulan: array[1..12] of string =&lt;br /&gt;    ( 'Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli',&lt;br /&gt;      'Agustus', 'September', 'Oktober', 'Nopember', 'Desember');&lt;br /&gt;&lt;br /&gt;  // You can change the string constant above with your language choice&lt;br /&gt;&lt;br /&gt;implementation&lt;br /&gt;&lt;br /&gt;{$R *.dfm}&lt;br /&gt;&lt;br /&gt;procedure replaceLongMonthNamesWithIndonesian;&lt;br /&gt;var i : integer;&lt;br /&gt;begin&lt;br /&gt;  for i:=1 to High(namaBulan) do&lt;br /&gt;    LongMonthNames[i] := namaBulan[i];&lt;br /&gt;end;&lt;br /&gt;&lt;br /&gt;procedure TForm1.FormCreate(Sender: TObject);&lt;br /&gt;begin&lt;br /&gt;  replaceLongMonthNamesWithIndonesian;&lt;br /&gt;end;&lt;br /&gt;&lt;br /&gt;procedure TForm1.Button1Click(Sender: TObject);&lt;br /&gt;begin&lt;br /&gt;  ShowMessageFmt(&lt;br /&gt;    'The date in Indonesian format (dd mmmm yyyy) : %s',&lt;br /&gt;    [FormatDateTime('dd MMMM yyyy', DateTimePicker1.Date)]);&lt;br /&gt;end;&lt;br /&gt;&lt;br /&gt;end.&lt;br /&gt;&lt;br /&gt;-------------------------------------&lt;br /&gt;// end of the code&lt;br /&gt;&lt;br /&gt;if you want to change the short name of a month with some other language either, you need to change the "ShortMonthNames" like we did above&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Enjoy it&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;ps : the original code is posted @delphi3000.com [&lt;/span&gt;&lt;a style="font-style: italic;" href="http://www.delphi3000.com/articles/article_4642.asp"&gt;http://www.delphi3000.com/articles/article_4642.asp&lt;/a&gt;]&lt;span style="font-style: italic;"&gt; by me either&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36597984-2725410959813520661?l=delphimiracles.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://delphimiracles.blogspot.com/feeds/2725410959813520661/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36597984&amp;postID=2725410959813520661' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/2725410959813520661'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/2725410959813520661'/><link rel='alternate' type='text/html' href='http://delphimiracles.blogspot.com/2006/11/displaying-month-names-in-indonesian-or.html' title=':: Displaying Month Names in Indonesian or Other Language Using FormatDateTime Function'/><author><name>Hary</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://bp1.blogger.com/_9sCVJSEmDMc/SHlwuZ-B1pI/AAAAAAAAABY/orNmGUh4zYs/S220/kungfu_001.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36597984.post-8832160681120089807</id><published>2006-11-23T20:51:00.000+08:00</published><updated>2006-11-25T02:06:32.945+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming article'/><title type='text'>:: Simple Way To Give Leading Zero In a Number</title><content type='html'>&lt;span style="font-style: italic;"&gt;» String Format Function&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Question/Problem/Abstract:&lt;/b&gt;&lt;br /&gt;&lt;div style="margin: 10px 20px;"&gt;How can we put the leading zero in a Number with specifix n Max Digit place holder ??&lt;br /&gt;Is there any Delphi built in function to do this job ??&lt;br /&gt;&lt;br /&gt;Eg :&lt;br /&gt;» if digit place holder is 5 =&gt; 00123&lt;br /&gt;» if digit place holder is 3 =&gt; 012 &lt;/div&gt;&lt;br /&gt;&lt;b&gt;Answer:&lt;/b&gt;&lt;br /&gt;&lt;div style="margin: 10px 20px 20px; font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;Actually, Delphi has supported to do this kind of job.&lt;br /&gt;Yes, we can use function "Format" strings to do this&lt;br /&gt;But we must do a little trick here to use it appropriately&lt;br /&gt;&lt;br /&gt;Here is my example code:&lt;br /&gt;********************************&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;function GiveLeadingZero(const aNumber, aMaxDigit: Integer): String;&lt;br /&gt;var formatSpecifier: String;&lt;br /&gt;begin&lt;br /&gt;  formatSpecifier := Format('%%.%dd', [aMaxDigit]);&lt;br /&gt;&lt;br /&gt;  // formatSpecifier will result like this: '%.5d' if aMaxDigit=5&lt;br /&gt;  Result := Format(formatSpecifier, [aNumber]);&lt;br /&gt;end;&lt;br /&gt;&lt;br /&gt;procedure TForm1.Button1Click(Sender: TObject);&lt;br /&gt;var aNumber: Integer;&lt;br /&gt;begin&lt;br /&gt;  if (TryStrToInt(Edit1.Text, aNumber)) then&lt;br /&gt;    Edit2.Text := GiveLeadingZero(aNumber, 5)&lt;br /&gt;  else&lt;br /&gt;    ShowMessage('Value in Edit1 is not a valid integer value');&lt;br /&gt;end;&lt;br /&gt;&lt;br /&gt;********************************&lt;br /&gt;&lt;br /&gt;To use those code, simply juzt put two TEdit component on the Form with one button to execute the code&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I think it solved the problem. &lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;ps : the original code is posted @delphi3000.com [&lt;/span&gt;&lt;a style="font-style: italic;" href="http://www.delphi3000.com/articles/article_4639.asp?SK=%5D"&gt;http://www.delphi3000.com/articles/article_4639.asp?SK=&lt;/a&gt;]&lt;span style="font-style: italic;"&gt; by me either&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36597984-8832160681120089807?l=delphimiracles.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://delphimiracles.blogspot.com/feeds/8832160681120089807/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36597984&amp;postID=8832160681120089807' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/8832160681120089807'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/8832160681120089807'/><link rel='alternate' type='text/html' href='http://delphimiracles.blogspot.com/2006/11/simple-way-to-give-leading-zero-in.html' title=':: Simple Way To Give Leading Zero In a Number'/><author><name>Hary</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://bp1.blogger.com/_9sCVJSEmDMc/SHlwuZ-B1pI/AAAAAAAAABY/orNmGUh4zYs/S220/kungfu_001.bmp'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36597984.post-754376685981122354</id><published>2006-11-18T16:22:00.000+08:00</published><updated>2006-11-18T17:02:52.300+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><title type='text'>:: How To Use Macro In Delphi's IDE</title><content type='html'>&lt;table style="width: 600px; height: 150px;"&gt;&lt;br /&gt;&lt;tbody&gt;&lt;tr&gt;&lt;br /&gt;&lt;td&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/x/blogger2/4320/4467/1600/960682/before.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/x/blogger2/4320/4467/400/789967/before.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/td&gt;&lt;br /&gt;&lt;td&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/x/blogger2/4320/4467/1600/824945/after.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/x/blogger2/4320/4467/400/223005/after.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/td&gt;&lt;br /&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;b&gt;&lt;span style="color:red;"&gt;See the picture first&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Question/Problem/Abstract:&lt;/b&gt;&lt;br /&gt;&lt;span style="margin: 10px 20px;"&gt;How to make such changes [see above picture] efficiently n quicker&lt;/span&gt;&lt;br /&gt;&lt;span style="margin: 10px 20px;"&gt;* Left picture : before quote formatting&lt;/span&gt;&lt;br /&gt;&lt;span style="margin: 10px 20px;"&gt;* Right picture : after use macro to give quote formatting&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Answer:&lt;/b&gt;&lt;br /&gt;&lt;span style="margin: 10px 20px;"&gt;You can do that only using Macro&lt;/span&gt;&lt;br /&gt;&lt;span style="margin: 10px 20px;"&gt;see my previous posting about &lt;a href="http://h4rypdelphi.blogspot.com/2006/10/delphi-ides-shortcuts-1.html"&gt;Macro Shortcut In Delphi&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="margin: 10px 20px;"&gt;and then follow below steps :&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1. Move your text cursor into "SELECT" line&lt;br /&gt;2. Activate the Recording Macro by pressing [Ctrl]+[Shift]+[r]&lt;br /&gt;3. Press [Home] button in order to move the cursor to the beggining of that line&lt;br /&gt;4. Press [Ctrl]+[Right Arrow] button&lt;br /&gt;5. Press ['] { give opening quote you deserve }&lt;br /&gt;6. Press [End] button&lt;br /&gt;7. Press [space] button in order to give trailing space for that line&lt;br /&gt;8. Press ['] { give closing quote you deserve }&lt;br /&gt;9. Press [space] button in order to give extra space again for that line&lt;br /&gt;10. Press [+] button to insert plus char at that position&lt;br /&gt;11. Press [Down Arrow] in order to move down the text cursor&lt;br /&gt;12.  Deactivate/stop the Recording Macro by pressing [Ctrl]+[Shift]+[r] again&lt;br /&gt;13. Last step is press [Ctrl]+[Shift]+[p] to play/use we've recorded macro for the remaining lines&lt;br /&gt;&lt;br /&gt;It's simple isn't it ?&lt;br /&gt;:D&lt;br /&gt;&lt;br /&gt;Increase your coding efficiency now !!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36597984-754376685981122354?l=delphimiracles.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://delphimiracles.blogspot.com/feeds/754376685981122354/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36597984&amp;postID=754376685981122354' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/754376685981122354'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/754376685981122354'/><link rel='alternate' type='text/html' href='http://delphimiracles.blogspot.com/2006/11/how-to-use-macro-in-delphis-ide.html' title=':: How To Use Macro In Delphi&apos;s IDE'/><author><name>Hary</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://bp1.blogger.com/_9sCVJSEmDMc/SHlwuZ-B1pI/AAAAAAAAABY/orNmGUh4zYs/S220/kungfu_001.bmp'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36597984.post-1136432627182345251</id><published>2006-11-05T01:51:00.000+08:00</published><updated>2006-11-07T00:36:13.464+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming article'/><title type='text'>:: Easiest Way Drawing Transparent Image</title><content type='html'>&lt;b&gt;Question/Problem/Abstract:&lt;/b&gt;&lt;br /&gt;&lt;span style="margin: 10px 20px;"&gt;How to draw an image transparently ?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Answer:&lt;/b&gt;&lt;br /&gt;&lt;span style="margin: 10px 20px 20px;"&gt;Here is anohter  way to draw a transparent image.&lt;/span&gt;&lt;br /&gt;&lt;span style="margin: 10px 20px 20px;"&gt;Only using Delphi properties and method  (Image).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Here is the example code:&lt;/span&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;// make draw proc to draw transparently&lt;br /&gt;procedure MyTransparentDraw(src, dest: TBitmap; x, y: integer; warna: TColor);&lt;br /&gt;begin&lt;br /&gt; src.Transparent := true;&lt;br /&gt; src.TransparentMode := tmFixed;&lt;br /&gt; src.TransparentColor := warna;&lt;br /&gt; dest.Canvas.Draw(x, y, src);&lt;br /&gt;end;&lt;br /&gt;&lt;br /&gt;procedure TForm1.Button1Click(Sender: TObject);&lt;br /&gt;const&lt;br /&gt; TRANS_COLOR = clYellow;  // change with transparent color you want&lt;br /&gt;var bmp, bmp2: TBitmap;&lt;br /&gt;begin&lt;br /&gt; if (OpenPictureDialog1.Execute) then begin&lt;br /&gt;   Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);&lt;br /&gt;   bmp := TBitmap.Create;&lt;br /&gt;   try&lt;br /&gt;     bmp.Width := Image1.Width;&lt;br /&gt;     bmp.Height := Image1.Height;&lt;br /&gt;     bmp.Assign(Image1.Picture.Bitmap);&lt;br /&gt;     bmp2 := TBitmap.Create;&lt;br /&gt;     try&lt;br /&gt;       bmp2.Width := bmp.Width;&lt;br /&gt;       bmp2.Height := bmp.Height;&lt;br /&gt;       MyTransparentDraw(bmp, bmp2, 0, 0, TRANS_COLOR);&lt;br /&gt;       Image1.Canvas.Draw(0, 0, bmp2);&lt;br /&gt;     finally&lt;br /&gt;       bmp2.Free;&lt;br /&gt;     end;&lt;br /&gt;   finally&lt;br /&gt;     bmp.Free;&lt;br /&gt;   end;&lt;br /&gt; end;&lt;br /&gt;end;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;To try above code, just copy and paste those code,&lt;br /&gt;then click on button to choose an image to be drawn transparently.&lt;br /&gt;You can change the value of "TRANS_COLOR" above with any other color that you want to be the transparent color of your image&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;ps : original source of this article was uploaded by h4ry p @ delphi3000.com&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.delphi3000.com/articles/article_3115.asp"&gt;&lt;span style="font-style: italic;"&gt;http://www.delphi3000.com/articles/article_3115.asp &lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36597984-1136432627182345251?l=delphimiracles.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://delphimiracles.blogspot.com/feeds/1136432627182345251/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36597984&amp;postID=1136432627182345251' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/1136432627182345251'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/1136432627182345251'/><link rel='alternate' type='text/html' href='http://delphimiracles.blogspot.com/2006/11/easiest-way-drawing-transparent-image.html' title=':: Easiest Way Drawing Transparent Image'/><author><name>Hary</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://bp1.blogger.com/_9sCVJSEmDMc/SHlwuZ-B1pI/AAAAAAAAABY/orNmGUh4zYs/S220/kungfu_001.bmp'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36597984.post-116179478825443797</id><published>2006-10-26T00:42:00.000+08:00</published><updated>2006-12-02T00:09:44.282+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='shortcuts'/><title type='text'>:: Delphi IDE's Shortcuts #2</title><content type='html'>&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-size:180%;"&gt;» &lt;/span&gt;Block Code Vertically&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Untuk Highlight/blok code per baris tentunya para delphiers tidak ada  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;kesulitan / sudah tau semua kan, kan tinggal menekan tombol [shift] &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;yang  diikuti tombol kursor bawah atau atas.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Nah kalo kita mau highlight/blok  code secara kolom bisa atau tidak ?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Misalnya kita mau copy blok code tertentu  tetapi tidak mau &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;menyertakan indentasi yang ada pada blok code tersebut  ?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Nah, ini ada caranya :&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;1. Aktifkan dulu mode highlight/block per  kolom-nya dengan menekan &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;tombol [Ctrl+O+C] (ctrl + huruf O (bukan nol) +  huruf C)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;2. Silahkan menekan tombol arah kanan/kiri untuk mengubah lebar  kolom &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;yang hendak dihighlight/blok&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;3. Silahkan kalau mau di copy/cut blok  code tersebut.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;4. Untuk mengembalikan mode highlight/blok code-nya ke mode  per baris &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;tekan tombol [Ctrl+O+L] atau clik mouse dimana saja.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Sekian  dulu tips nya.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Semoga berguna&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;[diambil dari milis &lt;/span&gt;&lt;a style="font-style: italic;" href="http://tech.groups.yahoo.com/group/delphierscafe/"&gt;delphierscafe@yahoogroups.com&lt;/a&gt;&lt;span style="font-style: italic;"&gt;]&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36597984-116179478825443797?l=delphimiracles.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://delphimiracles.blogspot.com/feeds/116179478825443797/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36597984&amp;postID=116179478825443797' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/116179478825443797'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/116179478825443797'/><link rel='alternate' type='text/html' href='http://delphimiracles.blogspot.com/2006/10/delphi-ides-shortcuts-2.html' title=':: Delphi IDE&apos;s Shortcuts #2'/><author><name>Hary</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://bp1.blogger.com/_9sCVJSEmDMc/SHlwuZ-B1pI/AAAAAAAAABY/orNmGUh4zYs/S220/kungfu_001.bmp'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36597984.post-116179407946232427</id><published>2006-10-26T00:10:00.000+08:00</published><updated>2006-12-10T14:46:00.569+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='shortcuts'/><title type='text'>:: Delphi IDE's Shortcuts #1</title><content type='html'>&lt;span style="font-family:trebuchet ms;"&gt;Maybe this post can help you to code more efficiently with Delphi's IDE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;Here is  the list : (I use Delphi 7)&lt;/span&gt;&lt;br /&gt;&lt;pre&gt;o&gt; Bookmarking&lt;br /&gt;a. Mark =&gt;&lt;br /&gt;     [Ctrl]+[Shift]+[0|1|2|...|9]&lt;br /&gt;       or&lt;br /&gt;     [Ctrl]+[k]+[0|1|2|...|9]&lt;br /&gt;b. UnMark =&gt;&lt;br /&gt;     [Ctrl]+[Shift]+[0|1|2|...|9]&lt;br /&gt;       or&lt;br /&gt;     [Ctrl]+[k]+[0|1|2|...|9]&lt;br /&gt;&lt;br /&gt;o&gt; Change code capitalization&lt;br /&gt;a. Lower Case : [Ctrl]+[k]+[o] { o not zero (0) }&lt;br /&gt;b. Upper Case : [Ctrl]+[k]+[n]&lt;br /&gt;&lt;br /&gt;How to use :&lt;br /&gt;1. Select the code&lt;br /&gt;2. Press [Ctrl]+[k]+[n]&lt;br /&gt;3. Now, the code has changed to its upper case&lt;br /&gt;&lt;br /&gt;o&gt; Make block indentation&lt;br /&gt;1. Select block of code&lt;br /&gt;2. Press [Ctrl]+[k]+[i]&lt;br /&gt;&lt;br /&gt;o&gt; Remove block indentation&lt;br /&gt;1. Select block of code&lt;br /&gt;2. Press [Ctrl]+[k]+[u]&lt;br /&gt;&lt;br /&gt;o&gt; Jumps to code declaration&lt;br /&gt;1. Move to code implementation&lt;br /&gt;2. Press [Ctrl]+[Shift]+[up arrow]&lt;br /&gt;&lt;br /&gt;o&gt; Jumps to code implementation&lt;br /&gt;1. Move to code declaration&lt;br /&gt;2. Press [Ctrl]+[Shift]+[down arrow]&lt;br /&gt;&lt;br /&gt;o&gt; Macro :&lt;br /&gt;a. Start recording : [Ctrl]+[Shift]+[r]&lt;br /&gt;b. Stop recording  : [Ctrl]+[Shift]+[r]&lt;br /&gt;c. Play macro      : [Ctrl]+[Shift]+[p]&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36597984-116179407946232427?l=delphimiracles.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://delphimiracles.blogspot.com/feeds/116179407946232427/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36597984&amp;postID=116179407946232427' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/116179407946232427'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36597984/posts/default/116179407946232427'/><link rel='alternate' type='text/html' href='http://delphimiracles.blogspot.com/2006/10/delphi-ides-shortcuts-1.html' title=':: Delphi IDE&apos;s Shortcuts #1'/><author><name>Hary</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://bp1.blogger.com/_9sCVJSEmDMc/SHlwuZ-B1pI/AAAAAAAAABY/orNmGUh4zYs/S220/kungfu_001.bmp'/></author><thr:total>0</thr:total></entry></feed>
