[LinuxFocus-icon]
<--  | �����  | �����  | ������  | �����

������� | ������ | ������ | ��� LF
��� �������� �������� �� ��������� ������: English  Castellano  ChineseGB  Deutsch  Francais  Russian  Turkce  

Jonas Alvarez
����� Jonás Alvarez
<jalvarez(at)eitb.com>

�� ������:

Jonás Alvarez ��������� ��� ������� ������������� ���������� ��� UNIX � Windows. ����� ������ �����, �� ���ף� ��������� ������ �� ������������ ��������, ����� � ����������.



������� �� �������:
������� �������� <dima_bsd(at)list.ru>

����������:

 

Gambas: ������ ��� Linux

Dibujo de una gamba

������:

Gambas-��� ���� �� ��������� � ������ ������ �������� ��� Linux. � ���� ������ �� ����������� ��������� ������, ��� ������ ������� �������� � ���� Gambas'� ��� ���������� �����.


_________________ _________________ _________________

 

��������

Basic - ���� �� �������� ����������� � ����� ������ ������ ����������������, ������� ������� ��� ��������. �� ��� ���, ����� ���������������� ������ ���������� ���������� �� Basic'e ��� Microsoft Visual Basic IDE. � ��������� ����� Linux ���������������� �� ���������������� �������. �� ���ͣ�, ����� ��� ���� ������������ �������� � �������������� ����, ��� ���������� �� ��� ��������, ����� ����� �� ����� �����������, ��� ������ ����������� �����, ������� ���� � �������������� ������. ������ ���� ���������, ������ �������� ��������� ���� ���������� �� BASIC'e. Gambas - ��� ����������� ����� ��� ���������� �������� �� BASIC'e, � ������� ��������� � ���� ������. ����� ���������������� ������� ����� ���������������� �� Visual Basic'e, ��, ��� �� ������ �����, ���� � �������. � ��������� ������ 0.64�, ������� ���� � ���� ������������ SuSE 9.0. �� ����� ��������� ���� ������, �� �������� ������� gambas ��������� ������ 0.81, �� ��� �� ������ ��������� ��� ������.

 

��� ����� ������������� � Gambas'�?

� ������������ ���������� ��� Visual Basic �����-�� �����, ������� ��� ������ �� ����� ����, ��� ������ ������ ��������, ����� ����������� ���� ������. ����� ����, ��� - ������ ���, ����� � ������� Gambas, ��� ����������, ��� �����, ��� �����-���� ����������� Visual Basic, ����� ��� ������������. ��� ���������, ��� ����� ���� ������ ����, ����� ������� � �������� BASIC ����� ���� ��� ������ �����.

 

������

� ����� ������� �� ����� ��������, ������� �� ������ � �������. ��� ����� ������� ����������, � �������� ���� ���� ���������� � �������� ������ �� ������. �� ����� �������� �����, ���������� � ��������� ��� ����� �������.

����� ����� ������� Gambas'a , �� ������ ��� ���������:

startup

�� ������� New Project (����� ������). � ��������� ���� � ��� ������� Project Name (��� �������). ������� ��� ������ CountDown. �� ������ ������� ������� project directory (����� �������). �� ������� ���� ������� �����, � � ��������� ������ �����, ������� ��� �����, ������� ���������� �������.

new project

���� �� ��������� Gambas � ������ ��� ��� �� �������������� �����, �� ������ ��������� ���. ������, ��� ��� ����������, � ��������� ����. �� ��� � ����� ����������, ������� � ������. �� ����� ��������� ���� �� ������� �����. ���� �� � �����, ����� ��� KDE, � ����������� �������� �������, ��, ��������, ������� ��������� ���� �� ��� Gambas'�, ��� �����, ���� ��� ���� ��� ���������. ���� �� ������ �����, ������� � ������ ��������� � KDE - ����� ������ ������� ���� ��������� ����������� ������.

�� ���������� ������� ������� ����� ���������. ��� �����,  ������ ������ ���� ���� � ����� ����� ���� �������, � ������� ����� �����.

new form

� ��������� ���� �� ��������� ��� �����, � ���� ������ FCountDown, �� ����� ���������� �� ���������.

new form dialog

� ��� ��� ���� ������ �����, ������� ���� ������.

form

�� ������� �� ��������� ������ ������������, ������� �� ����� �������� � ���� �����. �� ����� ������� ��� ��������, ������� ����� ��� ������ ���������. ��� ������� ������ ������� ����� ������� � ������� ����� ���� �����. ��� ��������� ������ �� ��������� ���, ������� ������, � ����� ����� �����. ��� ����� ��������� ��� �����: ����� (Label), ��������� ���� (TextBox), ������ (Timer), ��� ������ (Button) � ������������� (ToggleButton).

controls

����� ��� �������� �� �����, � ��� ������ ���������� ���-�� ������� �� ���: (����� ��� �����, ������ ������� �� ����� ���������, ��� �������):

controls in place

��� ������ ��� �������� �� ����� �����, �������� �� ����� �� �����, ����� ����� ��� ��� ���-���� �������. ��� �����, ����������� �������� Name �� �������� �������. �� �� ����� �������� ������� �� ������, ţ ����� ������������ � ���� ������� ������� �������. �� ����� ��������� ���� � ������� � ������� �� ������������ �����������, ����� ����� ��, ��� ��� �����.

� ������ ������� Label1 lblContador: � ������� �� �������� ���������� � �� ������ ������� � ���� �������� ��� ���. ��� ����� � ���������� �������� Name, ���������� ��� �������� lblContador. ����� � ������� �����, ����� ��� ������. ��� �����, � �������� font (�����) � ������� ����� Courier Bold 72 � �������� (OK). ����� ����� � ������� ��� �������� ToggleButton1 �� tglFuncionando. ������� TextBox1 ���� txtSegundos, Timer1 ���� clkMiReloj, Button1 ���������� cmdPonerSegundos �, �������, � ������������ Button2 �� cmdSalir. ����� � ������� Alignment (������������) txtSegundos �� Right (�����).

����, �������� ������ ��� Basic'�. �� ����� ������� � ��� ��������� �� ����� �����. ��� �� ������� �������, ��� ��� �������� �������, ������� ����� �� �����, ����� �������� ��������. ���� ����� ����� ������� �� Basic'�, �� ����� �� ��� ������� � ������ ���� ������� ������� ��������, �� �ӣ ����� �������� �� ��� �� ����� ���������.

��� ������ ��������� �����, �� ��������� ��������, ������� �����, ����� ������ ������� �����. ����� �� �������:"��� ������ ��������� �����", �� ������� � ��������: �������� �����. ��� ����� �� ������� ����� � ����� ����� �����, ��� ��� ���������. ����������� ���� ��������� � ������ ���������� � ���� ����� ���������: Public Sub Form_Open() (���� �� ��������������� �� Visual Basic, �� �� ������������ ������� Form_Load). �� ���������� ������� ������� lblContador, ����� �������� ���������� ���������� ������. ������ ������ ���� ������ ����� �������� ���:

' Gambas class file
CONST fSegundosPorDefecto AS Float=120.0
fSegundos AS Float

PRIVATE SUB VerValores()
DIM nMinutos AS Integer

nMinutos = Int(Int(fSegundos) / 60)
lblContador.Caption = nMinutos & ":" & Format (fSegundos -
nMinutos * 60, "00.0")
END

PRIVATE SUB VerActivarDesactivar()
IF tglFuncionando.Value THEN
tglFuncionando.Text = ("&Detener")
ELSE
tglFuncionando.Text = ("&Arrancar")
ENDIF
END

PUBLIC SUB Form_Open()
fSegundos = fSegundosPorDefecto
VerValores
tglFuncionando.Value = FALSE
VerActivarDesactivar
txtSegundos.Text = fSegundos
cmdPonerSegundos.Text = ("&Reiniciar")
cmdSalir.Text = ("&Salir")
END

�� �������� ����� ����� �����������, ������� ������������ Gambas,' Gambas class file, ���������, ������� �������� ���������� ������ �� ��������� ��� �����������, fSegundosPorDefecto, ������� �������� 120 ������ (��� ������), � ���������� fSegundos, ������� ����� ����������� ����������. ��, �����, ������� ��� ���������: VerValores, ������� ������������� �������� ����������� � VerActivarDesactivar, ������� �������� ����� ������ Start/Stop.

� ����� �������, � ��� ��� ���� �����, ������� ��������. ��� �� ������ ������ ���������, ��� ��������� ��� ������, ��� �� �������, ��� ��� ����� �����������. �� ��������� ��������� �� �������� ���� ������� Project CountDown � ��������� ���������, ����� ������ F5, ��� ����� ������ Execute ������ ������ ���� �� ����. ��� ��� �� ������ �������:

Project CountDown

���� ���������� ���-�� ������ ��� �������� ��������� �� ������, ����� ������������, ��� �� ������ �� ��� ���. ���� ��� ������� ������ Start, Reset ��� Exit ������ �� ����������. ��� ����� ����� ��������� ��������: ���������� �������, ������������ ��� ������� �� ������. ����� ���, ��� �� ���������, ������� �������� ��������� � ���������, ��� ��� ��������. ����� ������� ţ, �� ����� ������ X � ������� ������ ����. � � KDE � ����� SuSe, ��� �� ����� �������� �� ������, �������� �������� ���� ������ ��������.

������� ���������� ������ Exit. ��� ������ ���� ������ ���� ��������� �����������. ����� ������� ����� ������� ��������, ������������� ��� ������� �� ��� ������, �� ������ ݣ����� �� ������ � �������� Exit (cmbExit). �� �����, ��� Gambas ������������ ��������� ����� ���� � ������ ���������� ����� ����. ��� �� �����, ��� ������ ���� ������� ���. ��� ��������� ����� ���������, ����� ������������ ������ �� ������. ����� ������� ���������, �� ������ ��������� Me.Close, ��� ��� ��� ����� ��������� ���:

PUBLIC SUB cmdSalir_Click()
ME.Close
END

��������� ������, ������� �� ������ - ������ Reset. ����� �� �������: ������ ������� �� ������ � � ���� ���� ������ ��������� ������:

PUBLIC SUB cmdPonerSegundos_Click()
fSegundos = txtSegundos.Text
VerValores
END

�� ����, ��� ��� �������, ��� ����� �� ���������. ���� ��������� ������ ��������� �����-�� ��������. �� ������ ������������ ������ Timer. ��� �����, ����� ���������� �������� ��� ��������� ��������. ����� ������� ��� ��� ����� � ������� �������� Form_Open, ��� �������� ��� �� �����. ������ �� ������� ��� ���. �� �����, ������� �� ������� Timer � �� ��� property sheet (�������� �������) �������� �������� ��� �������� Delay (��������) �� 1000ms �� 100, ����� ����������� ���� �������� ������ ������� �������, ��� ����� ��������� ������ �����������.

� ��� ��� ��� ��� ����, ������� �� ���������� ������ ���, ����� ����������� � ���� ������������ ���. ����� ������������� ��� �����, ��� ������ �����, ������ ��� ������ �������� ������ �� ����� �����. ��� ��������� ��� � ���� ����. ����� ������ ������ ����, ��� ������ ��������� ���:

PUBLIC SUB clkMiReloj_Timer()
IF fSegundos < 0.1 THEN
tglFuncionando.Value = FALSE
tglFuncionando_Click
ELSE
fSegundos = fSegundos - 0.1
VerValores
END IF
END

�, �������, �� ������� ������������ �� ���������� ���������� �������-��������������, ������� �� �ӣ ��� �� �������. ����� �������� ������ �� ������, �� ����� �������� ��� ��� ����� ��������:

PUBLIC SUB tglFuncionando_Click()
clkMiReloj.Enabled = tglFuncionando.Value
VerActivarDesactivar
END

� �� ��� ����� �������������� ���� ������.

 

� ��������� �����: Gambas ������������, ��� � ������ ����

��� ���� ����������� Gambas'� - ��� ��������� ��������� ������. ���� �� ������� �� �����, �� ��������, ��� ������ ��������� � ������. ��� ��� ����, ����� ��������� Gambas, ��� ��� ������ ����� ����������. ����� ��������� ����� �� ��������� � ���� �������. ��� ������ ���� ���-�� ����� ��������, � ���� ����� �������, ����� ���������� ���� ���������� �� �� ������ �����. ������ �����. ������ � ���� Project / Properties ���� �������.

project properties

����� �� ������������� Title (���������) ������ ������� � �������� ����� Project is translatable (������ �����������), ������� �������� ������� ������ �����������. ������ ����� ����� ����� �������� � ����: Project / Translate. ���� �� ������� ���� ������, �� ������, ��� ������� ������ �����������:

project translation

������� �������� ������ ���� � ������� �����. ���� �� ����� ��������� ������ - �������� � ��������� ������ �����. ����� ��� ������ ����������, �� ����� �������������� ���������, �������� �� �� ���������, ���� ����� ���� �� ��������� ���������� LANG �������� ����� ��������. ���� � ���� ����������, ��� �������� ������� �� ����������, � �������� gambas � ��������

$ LANG=en_US; gambas

����� ��������� � ���������� ��������, � �������� gambas �� ���� KDE, ������ ������, ��� ���������� ����� �� ����������, ��� ������ ����� � ����� �������.

 

����������

���� ��� ������������������ ���� � ��� ����� ����� Gambas ��������� �������������, ��� ������� �����, ����� ������ ���������� ���������� ��� Linux. ��� �� ��������, �� ����� ����� � ���������� ������� ����� ������. ����� ���������� ��� ������ ������������ ����������.

�������� ������� ������� ���������, ����� ���� ���� ������� �� ���� File/Open example. �� �����, �����, ������� �� web �������� �������, ��� � ������ ������ ���� ����� ���������� �������� �� Basic'�. ��� ������ ������ �������, � ������� � ���� ������� �������.

 

�������� �������

� ������ ������� ���� �������� �������. �� ���� �������� �� ������ �������� ���� ����������� ��� ����������� ����������� ������ ���������
 talkback page 

<--, ������� � ��������� �������� �������

Webpages maintained by the LinuxFocus Editor team
© Jonás Alvarez, FDL
LinuxFocus.org
Translation information:
es --> -- : Jonás Alvarez <jalvarez(at)eitb.com>
es --> en: Miguel Alfageme Sánchez, Samuel Landete Benavente. <mas20(at)tid.es>
en --> ru: ������� �������� <dima_bsd(at)list.ru>

2004-03-21, generated by lfparser version 2.43