2003-08-31

A Few Changes

Today, I added a statistics link here. Also placed my email in the left column.

2003-08-30

گروه ايران-جاوا: مقاله‌ي فارسي در باره‌ي روبوكد

آيا چيزي در باره‌ي روبوكد مي‌دانيد؟ روبوكد يك شبيه‌ساز نبرد است كه مي‌توانيد در آن شاهد نبرد روبوت‌هايي باشيد كه خودتان و برنامه‌نويسان ديگر به زبان جاوا مي‌نويسيد.

ترجمه‌ي فارسي يك مقاله در باره‌ي روبوكد در قسمت پرونده‌هاي گروه قرار داده شده است. لطفاً به نشاني زير مراجعه فرماييد.

http://groups.yahoo.com/group/iran_java/files/robocode.pdf

نمايش رنگي كليدواژه‌ها و عناصر متني برنامه‌نويسي در سازه‌هاي متني سوينگ


فرض كنيد برنامه‌اي به زبان جاوا نوشته‌ايد كه متن پرونده‌هاي جاوا (يا زبان‌هاي برنامه‌نويسي ديگر, مثلاً HTML) را نشان مي‌دهد. مي‌دانيد چگونه مي‌توانيم به آساني قابليت نمايش رنگي كليدواژه‌ها و عناصر متني برنامه‌نويسي در سازه‌هاي متني سوينگ را به آن اضافه كنيم؟

بهترين روش آن است كه از بسته‌ي org.gjt.sp.jedit.syntax نوشته‌ي Slava Pestov استفاده كنيد كه جزئي از برنامه‌ي jEdit (به نشاني http://jedit.org) است, و تحت ليسانس GPL عرضه مي‌شود. (متن اين برنامه را مي‌توانيد از نشاني http://prdownloads.sourceforge.net/jedit/jedit41source.tar.gz?download بگيريد. البته اين بسته در برنامه‌ي BlueJ نيز مورد استفاده قرار گرفته و نشاني متن آن ftp://ftp.cc.monash.edu.au/pub/bluej/bluej-editor-src-114.jar است.)

در صورتي كه بسته‌ي مذكور را در اختيار داشته باشيم, مي‌توانيم مانند مثال زير از آن استفاده كنيم:

/*
 * In the name of God
 * TestSyntax.java
 * � Ghasem Kiani
 * 29/08/2003 10:07:10 PM
 * ghasemkiani@yahoo.com
 */

package com.ghasemkiani.app.test.syntax;

import javax.swing.*;
import org.gjt.sp.jedit.syntax.SyntaxDocument;

public class TestSyntax extends JFrame
{
	protected JEditorPane editor;
	public TestSyntax()
	{
		super("Syntax Colorizing Test");
		setDefaultCloseOperation(DISPOSE_ON_CLOSE);
		editor = new JEditorPane();
		editor.setEditorKit(new org.gjt.sp.jedit.syntax.SyntaxEditorKit());
		SyntaxDocument doc = (SyntaxDocument)editor.getDocument();
		doc.setTokenMarker(new org.gjt.sp.jedit.syntax.JavaTokenMarker());
		getContentPane().add(new JScrollPane(editor));
		setSize(480, 320);
		setVisible(true);
	}
	public static void main(java.lang.String[] args)
	{
		new TestSyntax();
	}
}