Mostrando postagens com marcador Codigo. Mostrar todas as postagens
Mostrando postagens com marcador Codigo. Mostrar todas as postagens

domingo, 17 de janeiro de 2010

Leitor de mensagens (tweets) do twitter

  Criei um simples leitor de mensagens (tweets) do twitter usando objeto Xml da extensao FC ( leia FremyCompany's extension) sendo necessaria estar devidamente instalada em seu SB.

  Versão em português QSN450 (veja o codigo fonte)
  Versão em ingles SQD608 (veja o codigo fonte)

quarta-feira, 4 de novembro de 2009

Simulador de Sistema Solar

Encontrei um codigo fonte que simula um sistema solar.

E um trabalho muito legal e interessante para estudar.

O código para baixar o fonte direto no SmallBasic: VKP168

ou acesse o link http://smallbasic.com/smallbasic.com/program/?VKP168

sexta-feira, 26 de dezembro de 2008

Ola mundo

Este é o primeiro código aos iniciantes em desenvolvimento de programas. Como em toda linguagem de programação, novo "OLA MUNDO"

Abra o editor Microsoft Small Basic.

Copie o código fonte :

TextWindow.WriteLine("OLA MUNDO !!!")

Pressione a tecla F5 ou click no botão Run

Pronto! Este é nosso primeiro programa em execução.

sexta-feira, 19 de dezembro de 2008

mini Editor de Texto

Eu comecei a escrever um pequeno editor de texto usando o Microsoft Small Basic na intenção de utilizar mais recursos da linguagem.

Este exemplo ainda nào esta concluido mas é uma bom começo ;-) vamos dizer que esta é a versao 0.1

miniEditor_v0.1.sb

posicaoX = 1
texto = ""
linha = 1
flagCaps = 1
maxLinhas = 10
arquivoEndereco = "arquivo.txt"


For i = 1 To maxLinhas
Array.SetValue("linha",i,"")
EndFor

GraphicsWindow.KeyDown = OnKeyDown
GraphicsWindow.Title = "Edit"
GraphicsWindow.FontSize = 12
comandosTopo()

Sub OnKeyDown
texto = Array.GetValue("linha", linha)
strKey = GraphicsWindow.LastKey
If ( strKey = "Back") Then
texto = Text.GetSubText(texto, 0, Text.GetLength(texto)-1)
Array.SetValue("linha",linha,texto)
If (Text.GetLength(texto) = 0) Then
linha = linha - 1
If (linha = 0) Then
linha = 1
EndIf
EndIf
ElseIf (strKey = "Space") Then
texto = texto + " "
Array.SetValue("linha",linha,texto)
ElseIf (strKey="Return") Then
linha = linha + 1
If (linha > maxLinhas) Then
GraphicsWindow.ShowMessage("Maximo de "+ maxLinhas +" linhas", "Atencao")
EndIf
ElseIf (strKey="Tab") Then
texto = texto + " " ' 2 espacos
Array.SetValue("linha",linha,texto)

ElseIf (strKey="F1") Then
linha = 1
limpaLinhas()
ElseIf (strKey="F2") Then
Buffer = ""
for i = 1 To linha
Buffer = Buffer + Array.GetValue("linha", i)
Buffer = Buffer + Text.GetCharacter(13)
EndFor
resultado = File.WriteContents(arquivoEndereco, Buffer)
If (resultado="SUCCESS") Then
GraphicsWindow.ShowMessage("Arquivo "+ arquivoEndereco +" salvo com sucesso", "Informacao")
linha = 1
limpaLinhas()
Else'
GraphicsWindow.ShowMessage("Erro ao salvar", "Informacao")
EndIf
ElseIf (strKey="Capital") Then
flagCaps = flagCaps * (-1)
ElseIf (strKey="Escape") Then
Program.End()
Else
if (flagCaps > 0) then
texto = texto + Text.ConvertToLowerCase( strKey )
else
texto = texto + Text.ConvertToUpperCase( strKey )
endif
Array.SetValue("linha",linha,texto)
EndIf

'Limpa tela
GraphicsWindow.Clear()
comandosTopo()
'Escreve Linhas que estao na memoria
For i = 1 To maxLinhas
texto = Array.GetValue("linha", i)
GraphicsWindow.DrawText(posicaoX, i * 12, texto)
EndFor
EndSub

Sub comandosTopo
GraphicsWindow.DrawText(1, 1, "F1-NOVO F2-SALVAR ESC-SAIR")
EndSub

Sub limpaLinhas
For i = 1 To maxLinhas
Array.SetValue("linha",i,"")
EndFor
EndSub


Falta programar o restante das teclas, mas espero que desperte a curiosidade para o uso dos comandos e funcionalidades.


[update] codigo fonte publicado link

terça-feira, 16 de dezembro de 2008

Compilar Arquivo .SB em linha de comando

Mexendo no Microsoft Small Basic, verifiquei a existencia de um arquivo no diretorio do Small Basic : SmallBasicCompiler.exe

Entao descobri que posso compilar rapidamente um arquivo .SB usando linha de comando sem fazer uso do compilador (para mim evita expor o uso de outra linguagem na hora do trabalho =p)

Entao criei um arquivo .BAT para gerar o executavel e testar.

compila.bat
Unidade:\PastaMsSmallBasic\SmallBasicCompiler.exe arquivo.sb
Exemplo no meu caso :
I:\SmallBasic\portable\SmallBasicCompiler.exe alomundo.sb
Detalhe na criacao do executavel para a geracao um arquivo .PDB de mesmo nome e a copia do arquivo SmallBasicLibrary.dll, acredito contenha as funcoes necessaria para o executavel funcionar.

:-)

segunda-feira, 15 de dezembro de 2008

Equacao 2 Grau

Lembrando os velhos tempos, escrevi o programa que resolve equacoes do segundo grau no Microsoft Small Basic, vamos ao codigo-fonte :

equacaoSegundoGrau.sb
' Programa Equacao do Segundo Grau
' Codigo para resolucao de equacoes do segundo grau
' para Microsoft Small Basic
valorA = 0
valorB = 0
valorC = 0
delta = 0
raiz = 0
x1 = 0
x2 = 0

TextWindow.WriteLine("EQUACAO 2 GRAU")
TextWindow.Write("Informe o valor A : ")
valorA = TextWindow.ReadNumber()
TextWindow.Write("Informe o valor B : ")
valorB = TextWindow.ReadNumber()
TextWindow.Write("Informe o valor C : ")
valorC = TextWindow.ReadNumber()

'calcular delta
delta=(valorB*valorB)-4*valorA*valorC

'se o valor de delta for positivo ou igual a zero
If (delta>=0) Then
raiz = Math.SquareRoot(delta)
x1 = (raiz-valorB)/(2*valorA)
x2 = ((raiz-valorB)/(2*valorA))*(-1)
TextWindow.WriteLine("Valor X1 = " + x1)
TextWindow.WriteLine("Valor X2 = " + x2)
Else
TextWindow.WriteLine("Delta negativo!")
TextWindow.WriteLine("Nao existe solucao dentro do conjunto dos numeros reais.")
TextWindow.WriteLine("Implemento isso outra hora :-)")
EndIf


Detalhe que este foi o primeiro problema que resolvi quebrando a cabeca na epoca do BASIC. Ate a proxima :-)