<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>HQ&#039;s Serenity &#187; NetBeans</title>
	<atom:link href="http://fauzilhaqqi.net/tag/netbeans/feed/" rel="self" type="application/rss+xml" />
	<link>http://fauzilhaqqi.net</link>
	<description>Muhammad Fauzil Haqqi&#039;s Personal Blog</description>
	<lastBuildDate>Sat, 21 Aug 2010 02:55:48 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Source Code Artikel PC Media 5/2010</title>
		<link>http://fauzilhaqqi.net/2010/04/source-code-artikel-pc-media-52010/</link>
		<comments>http://fauzilhaqqi.net/2010/04/source-code-artikel-pc-media-52010/#comments</comments>
		<pubDate>Sat, 10 Apr 2010 10:18:18 +0000</pubDate>
		<dc:creator>Haqqi</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[NetBeans]]></category>
		<category><![CDATA[PC Media]]></category>
		<category><![CDATA[Source Code]]></category>

		<guid isPermaLink="false">http://www.fauzilhaqqi.net/?p=235</guid>
		<description><![CDATA[Source code artikel saya di majalah PC Media edisi 5/2010
Ya ampun, maaf ya lagi-lagi terlambat. Majalah PC Media seri 5/2010 mestinya sudah dijadwalkan terbit mulai tanggal 1 April 2010, tapi post ini baru saya bikin hari ini.
Yup, lanjutan dari artikel sebelumnya, setelah membahas tentang pengenalan pemrograman game Java 2D, di seri kelima ini saya membahas [...]]]></description>
			<content:encoded><![CDATA[<p><span class="highlight-red"><b>Source code artikel saya di majalah PC Media edisi 5/2010</b></span></p>
<p><img src="http://www.fauzilhaqqi.net/wp-content/uploads/2010/03/21-1-pcmedia.jpg" alt="" title="Logo PC Media" width="277" height="78" class="alignleft size-full wp-image-190" />Ya ampun, maaf ya lagi-lagi terlambat. Majalah PC Media seri 5/2010 mestinya sudah dijadwalkan terbit mulai tanggal 1 April 2010, tapi post ini baru saya bikin hari ini.</span></p>
<p>Yup, lanjutan dari artikel sebelumnya, setelah membahas tentang pengenalan pemrograman game Java 2D, di seri kelima ini saya membahas mengenai dasar-dasar untuk melakukannya. Dimulai dari review program apa saja yang dibutuhkan, lalu dilanjutkan dengan dasar-dasarnya. Game yang dibahas di artikel ini masih sama, game jadul ular-ularan. Mengapa? Karena sebenarnya cukup dari satu game sederhana ini saja, konsep pemrograman game bisa tersampaikan.<br />
<span id="more-235"></span><br />
Untuk teknis, saya mulai dari pengenalan panel, window, applet, dan menampilkan gambar. Di bagian yang lebih advance, saya paparkan bagaimana menerima input sederhana dari keyboard. Setelah itu, dilanjutkan dengan bagaimana sebuah animasi dalam game Java dibuat. Ada 2 model rendering yang dijelaskan, yaitu passive rendering dan active rendering.</p>
<p>Untuk FPS (Frame Per Second) juga tidak lupa saya jelaskan. Dengan konsep FPS ini, game dapat berjalan dengan clock yang sama pada komputer manapun. Sebenarnya saya ingin menjelaskan lebih tentang teknik double buffering. Namun karena keterbatasan halaman, akhirnya saya urungkan. Tapi tetap saya jelaskan secara singkat apa itu teknik double buffering.</p>
<p>Jika yang membaca artikel saya adalah para programmer game professional, pasti artikel tersebut nggak akan ada gunanya. Tapi jika Anda adalah newbie yang baru saja ingin mempelajari pemrograman game Java 2D, saya rasa artikel saya cukup bermanfaat.</p>
<p>Seperti yang saya tulis dalam artikel tersebut, saya juga menyediakan source code untuk dapat didownload dan dipelajari. Source code itu dapat Anda download melalui link di bawah ini.</p>
<p><span class="download">Download source code di <a href="http://www.fauzilhaqqi.net/wp-content/uploads/2010/04/SnakePCMedia.zip">sini</a></span></p>
<p>Karena masalah kode etik, artikel yang saya kirim ke PC Media itu nggak mungkin saya post secara online tanpa seijin mereka. Jadi, yang mau baca silahkan beli majalah PC Media seri 5/2010.</p>
<p>Happy coding <img src='http://fauzilhaqqi.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://fauzilhaqqi.net/2010/04/source-code-artikel-pc-media-52010/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Source Code Artikel PC Media 4/2010</title>
		<link>http://fauzilhaqqi.net/2010/03/source-code-artikel-pc-media-42010/</link>
		<comments>http://fauzilhaqqi.net/2010/03/source-code-artikel-pc-media-42010/#comments</comments>
		<pubDate>Mon, 08 Mar 2010 13:04:02 +0000</pubDate>
		<dc:creator>Haqqi</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[NetBeans]]></category>
		<category><![CDATA[PC Media]]></category>
		<category><![CDATA[Source Code]]></category>

		<guid isPermaLink="false">http://www.fauzilhaqqi.net/?p=189</guid>
		<description><![CDATA[Source code artikel saya di majalah PC Media edisi 4/2010
Wah-wah, majalahnya sudah terbit, saya kelupaan posting source code-nya. Yup, di edisi ke-empat tahun 2010, artikel saya dipublish lagi di majalah PC Media dengan judul &#8220;Pengenalan Pemrograman Game Menggunakan Java&#8221;. Jadwal terbitnya sih mestinya 1 Maret 2010 (waktu artikel ini ditulis, saya belum beli), tapi baru [...]]]></description>
			<content:encoded><![CDATA[<p><span class="highlight-red"><strong>Source code artikel saya di majalah PC Media edisi 4/2010</strong></span></p>
<p><img class="alignleft size-full wp-image-190" style="margin: 8px;" title="21-1-pcmedia" src="http://www.fauzilhaqqi.net/wp-content/uploads/2010/03/21-1-pcmedia.jpg" alt="" width="277" height="78" />Wah-wah, majalahnya sudah terbit, saya kelupaan posting source code-nya. Yup, di edisi ke-empat tahun 2010, artikel saya dipublish lagi di majalah PC Media dengan judul &#8220;Pengenalan Pemrograman Game Menggunakan Java&#8221;. Jadwal terbitnya sih mestinya 1 Maret 2010 (waktu artikel ini ditulis, saya belum beli), tapi baru sekarang sempat untuk posting source code-nya ini. Di dalam artikel tersebut memang tercantum source code sederhana tentang bagaimana membuat game sangat sederhana sekali dengan menggunakan Java, yang saya tulis dapat diambil di blog ini.</p>
<p>Maaf ya, habisnya kemarin-kemarin lumayan sibuk sih, sampe lupa artikel sendiri udah mau terbit. Kali ini, rencananya akan saya bikin menjadi 3 seri dengan judul yang berbeda, namun tetap tentang pemrograman game menggunakan Java. Setelah kemarin menulis tentang <a href="http://fauzilhaqqi.blogspot.com/2009/03/devilish-children-di-pc-media.html" target="_blank">game buatan saya yang pertama kalinya</a>, kali ini saya mencoba menjelaskan kepada pembaca dengan lebih terurut bagaimana memulai membuat game menggunakan Java.<br />
<span id="more-189"></span><br />
Di seri pertama ini, saya menjelaskan bagaimana sih memulai membuat game. Di bagian awal, saya belum memfokuskan ke Java-nya. Saya memberi gambaran tentang apa saja yang harus dipelajari, dipersiapkan, dan dilakukan sebelum membuat game Java. Memang sih, ada beberapa penjelasan tentang alasan mengapa menggunakan Java untuk game programming. Tetapi juga saya sajikan beberapa hal umum seperti tips-tips dalam pembuatan game Java. Seperti sebelumnya, saya menyarankan pembaca untuk menggunakan editor <a href="http://www.netbeans.org" target="_blank">NetBeans</a> untuk coding. <a href="http://www.netbeans.org" target="_blank">NetBeans</a> nggak cuma untuk Java loh. Tunggu aja artikel berikutnya, saya berencana untuk membahas <a href="http://www.netbeans.org" target="_blank">NetBeans</a> lebih dalam.</p>
<p>Di bagian akhir, saya menyajikan sebuah source code sederhana untuk membuat dasar game snake (ular-ularan). Namanya juga dasar, nggak ada hal-hal detail seperti collision detection, state, dan sebagainya. Namun hal tersebut akan lebih diperdalam di seri berikutnya. Jangan khawatir.</p>
<p>Yang sedikit saya sayangkan, saya nggak tahu kalau layout PC Media untuk seri ini dibuat menjadi 3 kolom, yang sebelumnya 2 kolom. Akibatnya, pengukuran lebar kolom untuk source code saya menjadi kacau. Ada beberapa yang mungkin sudah ganti baris dengan posisi yang nggak enak dibaca. Tapi nggak masalah, masih bisa didownload di sini kok. Happy coding. <img src='http://fauzilhaqqi.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><span class="download">Source code dapat di download di <a href="http://www.fauzilhaqqi.net/wp-content/uploads/2010/01/SnakeHQ.zip" target="_blank">sini</a>.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://fauzilhaqqi.net/2010/03/source-code-artikel-pc-media-42010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Membatasi Jumlah Karakter pada JTextField</title>
		<link>http://fauzilhaqqi.net/2010/02/membatasi-jumlah-karakter-pada-jtextfield/</link>
		<comments>http://fauzilhaqqi.net/2010/02/membatasi-jumlah-karakter-pada-jtextfield/#comments</comments>
		<pubDate>Wed, 10 Feb 2010 06:00:19 +0000</pubDate>
		<dc:creator>Haqqi</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[HQ Library]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[NetBeans]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://www.fauzilhaqqi.net/?p=153</guid>
		<description><![CDATA[Sekali-sekali posting tutorial Java pake Bahasa Indonesia
Kadangkala, dalam membuat suatu program yang mengharuskan user mengisi suatu textfield, kita perlu membatasi jumlah karakter yang diketikkan. Dalam Java, class JTextField biasa tidak didesain untuk secara otomatis melakukannya. Coba saja Anda ketikkan satu juta karakter di sana, pasti masih bisa terpampang di layar. Nah, coba bayangkan kalau yang [...]]]></description>
			<content:encoded><![CDATA[<p><span class="highlight-red"><b>Sekali-sekali posting tutorial Java pake Bahasa Indonesia</b></span></p>
<p><a href="http://www.fauzilhaqqi.net/wp-content/uploads/2010/01/05-javablog.png"><img class="alignleft size-full wp-image-55" style="margin: 8px;" title="Java Blog" src="http://www.fauzilhaqqi.net/wp-content/uploads/2010/01/05-javablog.png" alt="" width="75" height="140" /></a>Kadangkala, dalam membuat suatu program yang mengharuskan user mengisi suatu textfield, kita perlu membatasi jumlah karakter yang diketikkan. Dalam Java, class JTextField biasa tidak didesain untuk secara otomatis melakukannya. Coba saja Anda ketikkan satu juta karakter di sana, pasti masih bisa terpampang di layar. Nah, coba bayangkan kalau yang harus diinputkan adalah field kode barang, atau nomor telepon, atau apapun yang memiliki batas panjang. Tentu akan merepotkan kalau di program harus mengecek itu.</p>
<p>Untuk itu lebih mudah jika kita membatasi jumlah karakter yang bisa diinputkan dalam JTextField. Salah satu gunanya adalah saat field yang Anda perlukan itu harus disimpan dalam kolom database yang memiliki lebar karakter terbatas. Dalam HQLibrary, saya juga berencana membuat utility yang menangani hal simpel ini. Yah, meskipun ini sebenarnya hal sederhana, rasanya tetap perlu dimasukkan untuk mempermudah nantinya.<br />
<span id="more-153"></span><br />
Oke, langsung masuk ke class yang saya buat. Class pertama, seperti biasa adalah Utility. Kali ini Class yang saya buat saya beri nama <code>HQTextFieldUtil</code>, yang nantinya akan berisi semua utility yang berhubungan dengan textfield.</p>
<pre class="brush: java;">
/**
 * DO NOT REMOVE THIS LICENSE
 *
 * This source code is created by Muhammad Fauzil Haqqi.
 * You can use and modify this source code freely but
 * you are forbidden to change or remove this license.
 *
 * Nick  : Haqqi
 * YM    : xp_guitarist
 * Email : fauzil.haqqi@gmail.com
 * Blog  : http://www.fauzilhaqqi.net
 */
package hq.utility;

import javax.swing.JTextField;
import javax.swing.text.AttributeSet;
import javax.swing.text.BadLocationException;
import javax.swing.text.PlainDocument;

/**
 *
 * @author Haqqi
 */
public final class HQTextFieldUtil {
  // *******variables area****** //

  // *****constructors area***** //
  private HQTextFieldUtil() {
  }

  // ********methods area******* //
  public static void limitTextFieldChar(JTextField field, final int numChar) {
    if (numChar == 0) {
      field.setDocument(new PlainDocument());
      return;
    }

    PlainDocument pd = new PlainDocument() {

      private static final long serialVersionUID = 1L;
      private int limit = numChar;

      @Override
      public void insertString(int offs, String str, AttributeSet a)
          throws BadLocationException {
        if (str == null) {
          return;
        }
        if ((getLength() + str.length()) &lt;= limit) {
          super.insertString(offs, str, a);
        }
      }
    };
    field.setDocument(pd);
  }
}
</pre>
<p>Pada method <code>limitTextFieldChar()</code>, akan dilakukan pembuatan suatu dokumen. Bagi yang belum mengerti, pada JTextField, sebenarnya kita tidak mengetikkan atau menyimpan hasil ketikan langsung di class milik swing tersebut. Alih-alih demikian, karakter-karakter yang kita ketikkan akan disimpan dalam suatu class yang bernama document. Nah, strategi dari pembatasan jumlah karakter ini adalah dengan mengeset dokumen baru ke textfield yang ada, dengan pengaturan sedemikian rupa. Saya melakukan override pada method <code>insertString()</code> untuk mengecek apakah karakter yang akan diketikkan akan menghasilkan panjang yang lebih dari limitasi.</p>
<p>Setelah membuat class ini, Anda bisa secara manual memanggilnya dengan</p>
<pre class="brush: java; light: true;">
HQTextFieldUtil.limitTextFieldChar(suatuTextField, suatuAngka);
</pre>
<p>Tapi karena saya lebih suka mendesain GUI dengan <a href="http://www.netbeans.org" target="_blank">NetBeans</a>, saya akan membuat class <code>HQLimitedTextField</code>.</p>
<pre class="brush: java;">
/**
 * DO NOT REMOVE THIS LICENSE
 *
 * This source code is created by Muhammad Fauzil Haqqi.
 * You can use and modify this source code freely but
 * you are forbidden to change or remove this license.
 *
 * Nick  : Haqqi
 * YM    : xp_guitarist
 * Email : fauzil.haqqi@gmail.com
 * Blog  : http://www.fauzilhaqqi.net
 */
package hq.widget;

import hq.utility.HQTextFieldUtil;
import javax.swing.JTextField;

/**
 *
 * @author Haqqi
 */
public class HQLimitedTextField extends JTextField {

  private static final long serialVersionUID = 1L;
  // *******variables area****** //
  private int limit;

  // *****constructors area***** //
  // ********methods area******* //
  /**
   * Get the value of limit
   *
   * @return the value of limit
   */
  public int getLimit() {
    return limit;
  }

  /**
   * Set the value of limit
   *
   * @param limit new value of limit
   */
  public void setLimit(int limit) {
    this.limit = limit;
    firePropertyChange(&quot;limit&quot;, getLimit(), limit);
    HQTextFieldUtil.limitTextFieldChar(this, limit);
  }
}
</pre>
<p>Dengan demikian, setelah proses drag and drop, saya bisa mengatur limitnya menggunakan panel properties yang ada pada NetBeans. Sangat mudah bukan? Happy coding <img src='http://fauzilhaqqi.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><span class="note">Sebenarnya saya akan meng-extend-kan class ini dari HQTextField yang telah diubah tampilannya. Tujuannya adalah agar semua turunannya seragam. Tapi sudahlah, karena memang belum jadi ya ini dulu.</span></p>
<div class="important-grey"><span class="important-title-grey">English keywords:</span>Java tutorial how to limit number of character in JTextField</div>
]]></content:encoded>
			<wfw:commentRss>http://fauzilhaqqi.net/2010/02/membatasi-jumlah-karakter-pada-jtextfield/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
