Microsoft Small Basic - форумы русскоязычного сообщества: F.A.Q по Small Basic - Microsoft Small Basic - форумы русскоязычного сообщества

Перейти к содержимому

Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

F.A.Q по Small Basic

Опрос: F.A.Q по Small Basic

Это открытое голосование. Другие пользователи смогут увидеть ваш выбор.

Помогла ли вам эта страница?

Вы не можете видеть результаты проса пока не проголосуете.
Голосовать Гости не могут голосовать

#1 Пользователь офлайн   TNT

  • Ведущий программист
  • PipPipPipPip
  • Группа: Продвинутые пользователи
  • Сообщений: 275
  • Регистрация: 25-March 09
  • Пол:Мужчина
  • Город:Тюмень
  • Интересы:Rock & Roll, Hi-Tech

Отправлено 20 July 2009 - 07:42

Вопрос: У меня сложился вопросик по поводу подключения стороних модулей в свои программы на MSB в частности.Какие есть для этого функции или придется писать специально под SMB?Можно ли использовать dll написаных на C#?Ну и напоследок-возможно ли использовать все функции .NET в SMB?
Ответ: Вот статья, в которой описано то, как можно расширить возможности MSB - http://smallbasic.ru...ost-small-basic.
Соответственно, с помощью таких расширений можно использовать все функции .NET.

Вопрос:
Изображение
Выдаёт ошибку при запуске. Net установлен.
Ответ: Попробуй очистить систему от всех .Net этой утилиткой, потом заново поставить.

Вопрос: У нас есть написанная программа, мы ее компировали) хотим передать другу опробовать на вкус...Но у него не установлен NET Framework, запустится ли у него программа?
Ответ: программы СБ запускаются только при установленном Framework 2.0

Вопрос: Что такое аргументы командной строки? Я искал и читал на сайте, но так и не понял...
Ответ: Например, программа example.exe.
В командной строке может набираться "example.exe -crash -safemode"
Вот -crash и -safemode это аргументы. Синтаксис и значения аргументов зависят от программы.

Вопрос: А какие применения у этих аргументов, что они выполняют? И можно ли это реализовать по другому? В самой программе например?
Ответ: вообще аргументы у программ используют в cmd и bat файлах для задания вшитых автопараметров.
В SB всё управление и захватывание аргументов делается объектом Arguments
Описания к каждой функции теперь есть на русском.

Вопрос: Можно ли создавать коммерческое ПО на MSB и распространять его?
Ответ: Сейчас на ранних этапах рано говорить о коммерциализации. Да и пока видется проблематичным создания коммерческого ПО.

Вопрос: Где команда Run и функция Shell()?
Ответ: Run и Shell можно реализовать только через расширения.

Вопрос: Насколько трудно реализовать 3D в Small Basic?
Ответ: Работа с 3D в данный момент не поддерживается (и вряд ли будет возможна в ближайшем будущем).
Возможно, работу с 3D можно осуществить с помощью компонентов расширений, но в любом случае это будет не так просто.
А вот пример работы с псевдо 3D (Пример написан для старой оболочки, в новых работа в массивами иная): http://smallbasic.com/program/?BHC268

Вопрос: Small Basic не умеет эллементарно показать двигающийся gif?
Ответ: Не умеет.

Вопрос: Можем ли мы при помощи Small Basic взаимодействовать с файлами? Делать кнопки и загружать файлы в программу на обработку информации и данных? Изменять, а потом сохранять?
Ответ: можем, если формат файла разобрать в текстовом виде или в ASCII символах.
Читать форматы файлов трудно. Но! Если в разработке какая-то полезная программа, то можно сделать свой формат файлов и его обработку. Так же как Браузер читает HTML, твоя программа будет работать с твоим форматом.

Вопрос: К сожалению, команда Sound.Play у меня не работает. В чем причина?
Ответ: При обращении в файлам следует использовать полные пути и избегать относительных. Обратиться к папке с программой позволит функция Program.Directory()

Вопрос: К компьютеру можно подключать различные устройства по интерфейсу RS-232 и управлять ими. Можно ли передавать/принимать
байты из MSB? Можно сформулировать вопрос еще и по другому - можно ли обращаться к портам COM1, COM2 ... ?
Ответ: Напрямую из Small Basic нельзя. Но можно через расширение (библиотеку, написанную на .NET-ориентированном языке).

Вопрос: Не могу понять как делать кнопки.
Ответ: Стандартных возможностей для этого нет. Но есть библиотека расширений, в которой сделан раздел Controls, в нём есть кнопки. Скачать библиотеку Тут

Вопрос: В языках программированя эта функция ищет и возвращает последнюю найденную позицию указанной подстроки, как её заменить в СБ?
Ответ:
Кодtofind = "text"

pos = Text.GetIndexOf(sample,tofind)
poslast = 0
While (pos > 0)
poslast = poslast+pos
pos = Text.GetIndexOf(Text.GetSubTextToEnd(sample,poslast+1),tofind)
EndWhile

last = Text.GetSubText(sample,poslast,Text.GetLength(tofind))
Textwindow.WriteLine("Last occurence of "+last+" is at position "+poslast)

Вопрос: как запустить русифицированный Small Basic на английской Windows?
Ответ: Для тех, у кого английская Windows, Small Basic запускаем так: %programfiles%microsoftsmall basicsb.exe /l:ru-ru

Вопрос: Здравствуйте, а как в textwindows скачивать файл и сразу его открывать?
Ответ:
Textwindow.Write(File.ReadContents(Network.DownloadFile("линк"))) 

Вопрос: Как работать с событиями? Я хочу написать программу где при нажатии клавиши происходит события.
Ответ:
Graphicswindow.Show()
Graphicswindow.KeyDown = KeyDown
Sub KeyDown
  If Graphicswindow.LastKey = "E" then
    Program.End()
  EndIf
EndSub
А вообще, смотрите готовые примеры. Например, в игре Soko это все есть.

Вопрос: Как растянуть GraphicsWindow на весь экран?
Ответ:
Graphicswindow.Top=0
Graphicswindow.Left=0
Graphicswindow.Height = Desktop.Height
Graphicswindow.Width = Desktop.Width
шире некуда

Вопрос: А что значат эти числа
Изображение
и что это даёт?
Ответ: Номер строки и номер позиции в строке. При запуске программы, если в ней содержатся ошибки, то указывается строка и позиция в строке, где произошла ошибка. Чтобы легче было найти.

Продолжение следует

Сообщение отредактировал TNT: 07 January 2010 - 16:29



0

#2 Пользователь офлайн   DanxilL

  • Младший программист
  • PipPip
  • Группа: Пользователи
  • Сообщений: 16
  • Регистрация: 08-October 09
  • Пол:Мужчина
  • Город:Молдова, Вулканешты
  • Интересы:php, asp, javascript, ajax, C++, C#, smallBasic, LUA

Отправлено 08 October 2009 - 10:06

Плюс один вопрос.
у меня не работает вот такая конструкция!
Graphicswindow.PenColor = color
color is variable
0

#3 Пользователь офлайн   TNT

  • Ведущий программист
  • PipPipPipPip
  • Группа: Продвинутые пользователи
  • Сообщений: 275
  • Регистрация: 25-March 09
  • Пол:Мужчина
  • Город:Тюмень
  • Интересы:Rock & Roll, Hi-Tech

Отправлено 23 December 2009 - 10:04

Цитата

Graphicswindow.PenColor = color
color is variable


А чему равна переменная color?


0

#4 Пользователь офлайн   TNT

  • Ведущий программист
  • PipPipPipPip
  • Группа: Продвинутые пользователи
  • Сообщений: 275
  • Регистрация: 25-March 09
  • Пол:Мужчина
  • Город:Тюмень
  • Интересы:Rock & Roll, Hi-Tech

Отправлено 07 January 2010 - 16:20

обновлено


0

Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей