Картинки с готовой проги.
Светодиодная матрица - МОДЖЕТ (антигаджет) на Пурике
Сообщений 241 страница 270 из 446
Поделиться24206.07.2011 12:28:50
Это со всеми файлами или только с некоторыми?
Открыл с десяток файлов - подобного не заменил.
Поделиться24306.07.2011 12:32:26
У меня с любым файлом.
Вот код:
;------------Светодиодная матрица - МОДЖЕТ (антигаджет)----------- ;{---------Запрет на запуск программы более одного раза----------- a = CreateSemaphore_(#Null,0,1,"MODGET 8x8") If a<>0 And GetLastError_()= #ERROR_ALREADY_EXISTS CloseHandle_(a) End EndIf ;}--------------------------------------------------------------- ;{-----------------------Enumeration------------------------------ Enumeration #Window_0 #Window_1 #Window_2 #Window_3 #ButtonImage_3 EndEnumeration ;} ;{ Images Enumeration #Image_Image_1 #Image_ButtonImage_1 #Image_ButtonImage_2 #Image_ButtonImage_3 EndEnumeration UsePNGImageDecoder() ;} ;{ Gadgets Enumeration #Button_2 #ComboBox_0 EndEnumeration Define.l Event, EventWindow, EventGadget, EventType, EventMenu ;}---------------------------------------------------------------- ;{----------------------Глобальные переменные--------------------- #Window_0=0 Global NO_Device.s="отключен" ;сообщения программы Global YES_Device.s="подключен" ;сообщения программы Global About.s="О программе МОДЖЕТ 8x8" Global Mod.s="МОДЖЕТ 8x8" Global Ver.s="Версия 1.0" Global open.s="Открыть файл" Global Maska.s="Текстовые файлы (*.txt)|*.txt" Global Lib1.s="Файл отсутствует!" Global Lib2.s="Для отображения времени" Global Lib3.s="требуется файл" #USB_PID=$5555 ;идентификатор PID #USB_VID=$FFFF ;идентификатор VID Global R_DeviceHandle, W_DeviceHandle Global Text.s Global Put.s ;абсолютный путь к файлу #XML = 0 SityNew$="29838"; - Барнаул Structure MeteoInfo State.b Sity.s Array DataDay.s(4) Array cloudiness.s(4) Array precipitation.s(4) Array rpower.s(4) Array spower.s(4) Array PRESSUREmin.s(4) Array PRESSUREmax.s(4) Array TEMPERATUREmin.s(4) Array TEMPERATUREmax.s(4) Array HEATmin.s(4) Array HEATmax.s(4) Array WINDmin.s(4) Array WINDmax.s(4) Array RELWETmin.s(4) Array RELWETmax.s(4) Array direction.s(4) EndStructure Structure ProgramItitThread meteo.b text.b EndStructure G_Meteo_Info.MeteoInfo G_Meteo_Info\State = -1 ProgramItitThread.ProgramItitThread ;} Procedure GisMet_XML_Data(*CurrentNode, CurrentSublevel, *Info.MeteoInfo) Static N If CurrentSublevel=0 N=0 EndIf If XMLNodeType(*CurrentNode) = #PB_XML_Normal If GetXMLNodeName(*CurrentNode) = "FORECAST" : N+1 : EndIf If ExamineXMLAttributes(*CurrentNode) While NextXMLAttribute(*CurrentNode) Select XMLAttributeName(*CurrentNode) Case "sname" *Info\Sity=XMLAttributeValue(*CurrentNode) Case "day" day$=XMLAttributeValue(*CurrentNode) Case "month" month$=XMLAttributeValue(*CurrentNode) Case "year" year$=XMLAttributeValue(*CurrentNode) Case "hour" hour$=XMLAttributeValue(*CurrentNode) Case "weekday" Select XMLAttributeValue(*CurrentNode) Case "1" weekday$= "в воскресенье" Case "2" weekday$= "в понедельник" Case "3" weekday$= "во вторник" Case "4" weekday$= "в среду" Case "5" weekday$= "в четверг" Case "6" weekday$= "в пятницу" Case "7" weekday$= "в субботу" EndSelect dataProg$= day$ + "." + month$ +"." + year$+"г., "+ #CRLF$+weekday$+","+ #CRLF$+"на " + hour$ *Info\DataDay(N)=dataProg$ ;Debug dataProg$ +" "+Str(N) Case "cloudiness"; Облачность Select XMLAttributeValue(*CurrentNode) Case "0" *Info\cloudiness(N)= "ясно" Case "1" *Info\cloudiness(N)= "малооблачно" Case "2" *Info\cloudiness(N)= "облачно" Case "3" *Info\cloudiness(N)= "пасмурно" EndSelect Case "precipitation" ; Осадки Select XMLAttributeValue(*CurrentNode) Case "4" *Info\precipitation(N)= "дождь" Case "5" *Info\precipitation(N)= "ливень" Case "6","7" *Info\precipitation(N)= "снег" Case "8" *Info\precipitation(N)= "гроза" Case "9" *Info\precipitation(N)= "нет данных" Case "10" *Info\precipitation(N)= "без осадков" EndSelect ;Debug cloudiness(N) + ", " + precipitation(N) Case "rpower" ; интенсивность осадков Select XMLAttributeValue(*CurrentNode) Case "0" *Info\rpower(N)= "возможен дождь/снег" Case "1" *Info\rpower(N)= "дождь/снег" EndSelect Case "spower" ; вероятность грозы Select XMLAttributeValue(*CurrentNode) Case "0" *Info\spower(N)= "возможна гроза" Case "1" *Info\spower(N)= "гроза" EndSelect Case "min" Select GetXMLNodeName(*CurrentNode) Case "PRESSURE" *Info\PRESSUREmin(N) = XMLAttributeValue(*CurrentNode) Case "TEMPERATURE" *Info\TEMPERATUREmin(N) = XMLAttributeValue(*CurrentNode) Case "HEAT" *Info\HEATmin(N) = XMLAttributeValue(*CurrentNode) Case "WIND" *Info\WINDmin(N) = XMLAttributeValue(*CurrentNode) Case "RELWET" *Info\RELWETmin(N) = XMLAttributeValue(*CurrentNode) EndSelect Case "max" Select GetXMLNodeName(*CurrentNode) Case "PRESSURE" *Info\PRESSUREmax(N) = XMLAttributeValue(*CurrentNode) Case "TEMPERATURE" *Info\TEMPERATUREmax(N) = XMLAttributeValue(*CurrentNode) Case "HEAT" *Info\HEATmax(N) = XMLAttributeValue(*CurrentNode) Case "WIND" *Info\WINDmax(N) = XMLAttributeValue(*CurrentNode) Case "RELWET" *Info\RELWETmax(N) = XMLAttributeValue(*CurrentNode) EndSelect Case "direction" Select XMLAttributeValue(*CurrentNode) Case "0" *Info\direction(N) = "северный" Case "1" *Info\direction(N) = "северо-восточный" Case "2" *Info\direction(N) = "восточный" Case "3" *Info\direction(N) = "юго-восточный" Case "4" *Info\direction(N) = "южный" Case "5" *Info\direction(N) = "юго-западный" Case "6" *Info\direction(N) = "западный" Case "7" *Info\direction(N) = "северо-западный" EndSelect EndSelect Wend EndIf ; *ChildNode = ChildXMLNode(*CurrentNode) While *ChildNode <> 0 GisMet_XML_Data(*ChildNode, CurrentSublevel+1, *Info) *ChildNode = NextXMLNode(*ChildNode) Wend EndIf EndProcedure Procedure.l DownloadToMem(URL.s, *lpRam, ramsize.l) Protected agent.s, hInet.l, hData.l, Bytes.l agent.s = "IE 6.0" hInet.l = InternetOpen_( @agent.s,0,0,0,0 ) hData.l = InternetOpenUrl_( hInet, @URL.s, "", 0, $8000000, 0 ) If hData > 0 : InternetReadFile_ ( hData, *lpRam, ramsize.l, @Bytes.l ) : Else : Bytes = -1 : EndIf InternetCloseHandle_(hInet) ;InternetCloseHandle_(hFile) InternetCloseHandle_(hData) ProcedureReturn Bytes.l EndProcedure Procedure DateTime() ; Эта процедура вызывается по таймеру два раза в секунду. Time.s = FormatDate("%hh:%ii:%ss", Date() ) ; Узнаём текущее время SetGadgetText(84,Time) EndProcedure Procedure SetEditorMemeo(*Info.MeteoInfo) If *Info\State = 1 If GetGadgetState(40) = 1 Ind = 2 ElseIf GetGadgetState(41) = 1 Ind = 3 ElseIf GetGadgetState(42) = 1 Ind = 4 Else Ind = 1 EndIf ; SetGadgetText(38, "В городе " + URLDecoder(*Info\Sity)+" "+ *Info\DataDay(Ind)+ "ч. прогнозируется:" + #CRLF$ + "давление " + *Info\PRESSUREmin(Ind) + "-"+ *Info\PRESSUREmax(Ind) +" мм.рт.ст.," + #CRLF$ + "ветер "+*Info\direction(Ind)+","+" "+*Info\WINDmin(Ind)+"-"+*Info\WINDmax(Ind) +" m\c,"+ #CRLF$ +"относительная влажность" + #CRLF$ + "воздуха " + *Info\RELWETmin(Ind) + "-"+ *Info\RELWETmax(Ind) +" %"+ #CRLF$ +"температура "+*Info\TEMPERATUREmin(Ind)+"-"+ *Info\TEMPERATUREmax(Ind) +"°C, "+ #CRLF$ + *Info\cloudiness(Ind) + ", " + *Info\precipitation(Ind) ) SetGadgetText(38, "В городе " + URLDecoder(*Info\Sity)+#CRLF$+ *Info\DataDay(Ind) + "ч. прогнозируется:" + #CRLF$ + "давление " + *Info\PRESSUREmin(Ind) + "-"+ *Info\PRESSUREmax(Ind) +" мм.рт.ст.," + #CRLF$ + "ветер "+*Info\direction(Ind)+","+" "+*Info\WINDmin(Ind)+"-"+*Info\WINDmax(Ind) +" m\c,"+ #CRLF$ +"относительная влажность" + #CRLF$ + "воздуха " + *Info\RELWETmin(Ind) + "-"+ *Info\RELWETmax(Ind) +" %,"+ #CRLF$ +"температура "+*Info\TEMPERATUREmin(Ind)+"-"+ *Info\TEMPERATUREmax(Ind) +"°C, "+ #CRLF$ + *Info\cloudiness(Ind) + ", " + *Info\precipitation(Ind) + "." ) ElseIf *Info\State = 0 SetGadgetText(38, "Внутеняя ошибка программы") ; Не удалось выделить память под XML ElseIf *Info\State = 2 SetGadgetText(38, "Нет связи с сервером погоды") ElseIf *Info\State = 3 SetGadgetText(38, "Ошибка расшифровки данных") EndIf EndProcedure Procedure GetMeteo(SityNew.s) Shared G_Meteo_Info *Mem_XML = AllocateMemory(100000) If *Mem_XML FillMemory(*Mem_XML, 100000, 0) Bytes=DownloadToMem ("http://informer.gismeteo.ru/xml/"+SityNew+"_1.xml", *Mem_XML, 100000) If Bytes>0 If CatchXML(#XML,*Mem_XML,Bytes) ;LoadXML(#XML, FileName$) *MainNode = MainXMLNode(#XML) If *MainNode G_Meteo_Info\State = 1 GisMet_XML_Data(*MainNode, 0, @G_Meteo_Info) SetEditorMemeo(@G_Meteo_Info) Else G_Meteo_Info\State = 3 EndIf Else G_Meteo_Info\State = 3 EndIf Else G_Meteo_Info\State = 2 EndIf FreeMemory(*Mem_XML) Else G_Meteo_Info\State = 0 EndIf EndProcedure Procedure ProgramAtStartup(State, ProgName.s) ; Управление автозагрузкой программы valueName$=ProgramFilename() GetHandle = RegOpenKeyEx_(#HKEY_CURRENT_USER, "Software\Microsoft\Windows\CurrentVersion\Run", 0, #KEY_ALL_ACCESS, @hKey) If GetHandle = #ERROR_SUCCESS If State=1 RegSetValueEx_(hKey, @ProgName, 0, #REG_SZ, @valueName$, Len(valueName$)) Else RegDeleteValue_(hKey, @ProgName) EndIf RegCloseKey_(hKey) EndIf EndProcedure Procedure FindDevice_Timer() ; таймер - процедура проверки подключения нашего устройства Static Old_Test Test=HID_Lib_DeviceTest(#USB_PID, #USB_VID) If Test<>Old_Test Old_Test=Test If Test HID_Lib_CloseDevice(R_DeviceHandle) : HID_Lib_CloseDevice(W_DeviceHandle) W_DeviceHandle=HID_Lib_OpenDevice(#USB_PID, #USB_VID) R_DeviceHandle=HID_Lib_OpenDevice(#USB_PID, #USB_VID) SetGadgetText(56, YES_Device) SetGadgetColor(56, #PB_Gadget_FrontColor, $00FF0F) Else HID_Lib_CloseDevice(R_DeviceHandle) : HID_Lib_CloseDevice(W_DeviceHandle) R_DeviceHandle=0 : W_DeviceHandle=0 SetGadgetText(56, NO_Device) SetGadgetColor(56, #PB_Gadget_FrontColor, $0000FF) EndIf EndIf EndProcedure InitNetwork() Structure DrawInfo row.c[8] EndStructure #xc = 20 ; начало по X #yc = 20 ; начало по Y CreateImage(80,148,148) Procedure.s UTF2Ansi(str$) str_in$=str$: len=Len(str_in$)+5: str_tmp$=Space(len*4) CP_IN=65001; #CP_UTF8=65001 CP_OUT=1251 MultiByteToWideChar_(CP_IN,0,@str_in$,len,@str_tmp$,len) WideCharToMultiByte_(CP_OUT,0,@str_tmp$,len,@str_in$,len,0,0) ProcedureReturn str_in$ EndProcedure Procedure.s Many_ru() Protected Result.s, *mem, Many.s Protected url.s, Bytes, Datas.s, html.s Protected Dim Result$(0), ManyExpression.s Protected Pos Result = "Ошибка" Datas = FormatDate("%dd.%mm.%yyyy",Date()) url = "http://www.cbr.ru/currency_base/D_print.aspx?date_req="+Datas *mem = AllocateMemory(200000) If *mem Bytes = DownloadToMem(url, *mem, 200000) If Bytes html = UTF2Ansi(PeekS(*mem)) If html<>"" Result = "Центральный банк Российской Федерации установил следующие курсы иностранных валют к рублю Российской Федерации на " + Datas + ":" + Chr(10) Restore Many_ru For i=1 To 35 Read.s Many Pos = FindString(Many, " ", 1) ManyExpression = Right(Many, Len(Many)-Pos) ManyExpression+"</td>" + #CRLF$ + "<td align="+Chr(34)+"right"+Chr(34)+">" Pos1 = FindString(html, ManyExpression, 1) If Pos1>0 Pos1+Len(ManyExpression) Pos2 = FindString(html,"</td>",Pos1) If Pos2>0 Result + " "+Many+" = "+Mid(html, Pos1, Pos2-Pos1) +" руб.;" EndIf EndIf Next i EndIf EndIf FreeMemory(*mem) EndIf ProcedureReturn Result EndProcedure Procedure.s Many_uk() Protected Result.s, *mem, Many.s Protected url.s, Bytes, Datas.s, html.s Protected ManyExpression.s, Temp.s Protected Pos, Pos1, Pos2 Result = "Помилка при розшифровці файлу" Datas = FormatDate("%dd.%mm.%yyyy",Date()) url = "http://bank.gov.ua/Fin_ryn/OF_KURS/Currency/FindByDate.aspx?__EVENTARGUMENT=&__EVENTTARGET=&Text1="+Datas *mem = AllocateMemory(200000) If *mem Bytes = DownloadToMem(url, *mem, 200000) If Bytes html = UTF2Ansi(PeekS(*mem)) If html<>"" Pos = FindString(html, "<td>Офіційний курс</td>", 1) If Pos Pos1 = FindString(html, "</table>", Pos+Len("<td>Офіційний курс</td>")) If Pos1 html=Mid(html, Pos, Pos1-Pos) Result = "Національний банк України. Середній курс гривні до іноземних валют на " + Datas + " становить:" + Chr(10) Restore Many_uk For i=1 To 27 Read.s Many Pos = FindString(Many, " ", 1) ManyExpression = Right(Many, Len(Many)-Pos) ManyExpression + "</td>" Pos1 = FindString(html, ManyExpression, 1) If Pos1>0 Pos1+Len(ManyExpression) Pos2 = FindString(html,"</td>",Pos1) If Pos2>0 Temp.s=Mid(html, Pos1, Pos2-Pos1) Pos = FindString(ReverseString(Temp),">", 1) If Pos>0 Result + " "+Many+" = "+Mid(Temp, Len(Temp)-Pos+2)+" грн.;" EndIf EndIf EndIf Next i EndIf EndIf EndIf EndIf FreeMemory(*mem) EndIf ProcedureReturn Result EndProcedure Procedure Draw_Image(*Infa.DrawInfo) If StartDrawing(ImageOutput(80)) Box(83,0,148,148,0) ; Очистка рисунка For col = 0 To 7 For row = 0 To 7 x = 20 + col * 15 y = 20 + row * 15 If *Infa\row[row] << col & %10000000 Color = RGB(255, 102, 00) Else Color = RGB(102, 102, 102) EndIf Circle(x, y, 5, Color) Next Next StopDrawing() EndIf ; SetGadgetState(13, ImageID(80)) EndProcedure Procedure Timer1() ImageDraw.DrawInfo For i=0 To 7 ImageDraw\row[i] = Random(255) Next i Draw_Image(@ImageDraw) EndProcedure Procedure StreamFileIn_Callback(hFile, pbBuff, cb, pcb) ProcedureReturn ReadFile_(hFile, pbBuff, cb, pcb, 0)!1 EndProcedure Procedure FileStreamIn(Gadget, Files.s) ;Procedure zum streamen einer Datei in das RichEdit ;Control Protected StreamData.EDITSTREAM ;Wenn die Datei geцffnet werden kann, fortfahren. If ReadFile(10, Files) ;Das Handle der Datei speichern StreamData\dwCookie = FileID(10) StreamData\dwError = #Null ;Die Adresse der Callback Procedure speichern StreamData\pfnCallback = @StreamFileIn_Callback() ;Das RichEdit Control anweisen, den Stream zu aktivieren SendMessage_(GadgetID(Gadget), #EM_STREAMIN, #SF_RTF, @StreamData) ;Datei schliessen CloseFile(10) EndIf EndProcedure Procedure Open_Window_1() OpenWindow(1, 0, 0, 277, 247, About, #PB_Window_ScreenCentered );| #PB_Window_SystemMenu) EditorGadget(72,2,2,496,370,#PB_Editor_ReadOnly) SendMessage_(GadgetID(72), #EM_SETTARGETDEVICE, #Null, 0) ; Перенос по словам ;If LoadImage(70, "LOGO.bmp") ; change 2nd parameter to the path/filename of your image ImageGadget(70, 6, 6, 235, 78, ImageID(70)) ; imagegadget standard EditorGadget(72,95,46,176,170,#PB_Editor_ReadOnly) SendMessage_(GadgetID(72), #EM_SETTARGETDEVICE, #Null, 0) ; Перенос по словам FileStreamIn(72, "Авторы.rtf") TextGadget(62,95,6,100,18,Mod) TextGadget(63,95,26,100,18,Ver) ;TextGadget(64,102,58,150,18,"Copyright © Radan 2011") ;TextGadget(65,102,82,100,18,"Radan Studio") Lang.s="ru" If GetGadgetState(90)=1 Lang.s="en" EndIf FileStreamIn(72, Left(Lang, 2)+"_avtori.rtf") ButtonGadget(66,185,222,75,20,"OK") ;EndIf EndProcedure Procedure LoadText(File.s) cb1 = GetGadgetState(30) ; Это чтобы восстановить активные кункты в выпадающих списках. cb2 = GetGadgetState(48) cb3 = GetGadgetState(#ComboBox_0) OpenPreferences(File) PreferenceGroup("MainWin") SetWindowTitle(0,ReadPreferenceString("ac","МОДЖЕТ 8x8") ) ToolBarToolTip(0, 1, ReadPreferenceString("ac1","Добавить в автозагрузку") ) ToolBarToolTip(0, 2, ReadPreferenceString("ac2","Удалить из автозагрузки") ) ToolBarToolTip(0, 3, ReadPreferenceString("ac3","О программе") ) GadgetToolTip(90, ReadPreferenceString("ac4","Язык")) ;CreatePopupMenu(68) ;MenuItem(5, ReadPreferenceString("ac5","Свернуть")) ;MenuBar() ;MenuItem(10, ReadPreferenceString("ac6","Выход")) SetGadgetItemText(0,0, ReadPreferenceString("ac7","Случайный")) SetGadgetText(22,ReadPreferenceString("ac8","Пиксели") ) SetGadgetText(23,ReadPreferenceString("ac9","Скорость") ) SetGadgetText(13,ReadPreferenceString("ac10","Случайно") ) SetGadgetText(14,ReadPreferenceString("ac11","Матрица") ) SetGadgetText(15,ReadPreferenceString("ac12","Калейдоскоп") ) SetGadgetText(16,ReadPreferenceString("ac13","Инверсия") ) SetGadgetText(17,ReadPreferenceString("ac14","Звук") ) SetGadgetItemText(0,1, ReadPreferenceString("ac15","Время")) SetGadgetText(51,ReadPreferenceString("ac16","Скорость") ) SetGadgetText(9,ReadPreferenceString("ac17","Вид 1") ) SetGadgetText(10,ReadPreferenceString("ac18","Вид 2") ) SetGadgetText(11,ReadPreferenceString("ac19","Вид 3") ) SetGadgetText(12,ReadPreferenceString("ac20","Инверсия") ) SetGadgetItemText(0,2, ReadPreferenceString("ac21","Курс валют") ) SetGadgetText(25,ReadPreferenceString("ac22","Инверсия") ) SetGadgetText(26,ReadPreferenceString("ac23","Регистр") ) SetGadgetText(27,ReadPreferenceString("ac24","Горизонтально") ) SetGadgetText(28,ReadPreferenceString("ac25","Вертикально") ) SetGadgetText(52,ReadPreferenceString("ac26","Скорость") ) SetGadgetItemText(30,0, ReadPreferenceString("ac27","Украина") ) SetGadgetItemText(30,1, ReadPreferenceString("ac28","Россия") ) SetGadgetItemText(0,3, ReadPreferenceString("ac29","Текст") ) SetGadgetText(43,ReadPreferenceString("ac30","Инверсия") ) SetGadgetText(44,ReadPreferenceString("ac31","Регистр") ) SetGadgetText(45,ReadPreferenceString("ac32","Горизонтально") ) SetGadgetText(46,ReadPreferenceString("ac33","Вертикально") ) SetGadgetText(50,ReadPreferenceString("ac34","Загрузить текст") ) SetGadgetItemText(0,4, ReadPreferenceString("ac35","Погода") ) SetGadgetText(32,ReadPreferenceString("ac36","Инверсия") ) SetGadgetText(33,ReadPreferenceString("ac37","Регистр") ) SetGadgetText(34,ReadPreferenceString("ac38","Горизонтально") ) SetGadgetText(35,ReadPreferenceString("ac39","Вертикально") ) SetGadgetItemText(0,5, ReadPreferenceString("ac40","Спектр") ) SetGadgetText(4,ReadPreferenceString("ac41","Линия 1") ) SetGadgetText(5,ReadPreferenceString("ac42","Линия 2") ) SetGadgetText(6,ReadPreferenceString("ac43","Точка") ) SetGadgetText(24,ReadPreferenceString("ac44","Инверсия") ) NO_Device = ReadPreferenceString("ac45","отключен") YES_Device = ReadPreferenceString("ac46","подключен") If HID_Lib_DeviceTest(#USB_PID, #USB_VID) SetGadgetText(56, YES_Device) SetGadgetColor(56, #PB_Gadget_FrontColor, $00FF0F) Else SetGadgetText(56, NO_Device) SetGadgetColor(56, #PB_Gadget_FrontColor, $0000FF) EndIf SysTrayIconToolTip(67, ReadPreferenceString("ac47","МОДЖЕТ 8x8") ) SetGadgetText(55,ReadPreferenceString("ac48","МОДЖЕТ ") ) About = ReadPreferenceString("ac49","О программе МОДЖЕТ 8x8") Mod = ReadPreferenceString("ac50","МОДЖЕТ 8x8") Ver = ReadPreferenceString("ac51","Версия 1.0") open = ReadPreferenceString("ac52","Открыть файл") Maska = ReadPreferenceString("ac53","Текстовые файлы (*.txt)|*.txt") GadgetToolTip(39, ReadPreferenceString("ac54","Прогноз на 6 часов")) GadgetToolTip(40, ReadPreferenceString("ac55","Прогноз на 12 часов")) GadgetToolTip(41, ReadPreferenceString("ac56","Прогноз на 18 часов")) GadgetToolTip(42, ReadPreferenceString("ac57","Прогноз на сутки")) SetGadgetText(85,ReadPreferenceString("ac58","Текущее время") ) GadgetToolTip(37,ReadPreferenceString("ac59","Обновить данные") ) SetGadgetText(75,ReadPreferenceString("ac60","Скорость") ) Lib1 = ReadPreferenceString("ac61","Файл отсутствует!") Lib2 = ReadPreferenceString("ac62","Для отображения времени") Lib3 = ReadPreferenceString("ac63","требуется файл") SetGadgetText(76,ReadPreferenceString("ac64","Уровень сигнала") ) ClosePreferences() SetGadgetState(30,cb1) ; Это чтобы восстановить активные кункты в выпадающих списках. SetGadgetState(48,cb2) SetGadgetState(#ComboBox_0,cb3) EndProcedure Procedure.s ReadText(File$) Protected Text.s = "" If ReadFile(0, File$) Size = Lof(0); размер файла в байтах If Size>0 *String = AllocateMemory(Size); выделяем область памяти If *String FillMemory(*String, Size, 0) FormatFile=ReadStringFormat(0) ; Определение кодировки файла (Ascii, UTF8 или Unicode). ReadData(0, *String , Size); записываем строку в область памяти Text.s=PeekS(*String, -1, FormatFile) FreeMemory(*String) EndIf EndIf CloseFile(0) EndIf ProcedureReturn Text EndProcedure Procedure UnPak(*pak) ; Процедура UnPak() распаковывает данные, упакованные функцией PackMemory() ; Процедуре нужно передать указатель на первый байт упакованных данных, например из DataSection ; При успешной распаковке, процедура вернет указатель на место нахождения распакованных данных ; Не забывайте освобождать память функцией FreeMemory когда распакованные данные больше не нужны *Unpak_mem = 0 RealSize = PeekL(*pak+2) If RealSize>0 And RealSize<10000000 *mem = AllocateMemory(RealSize+10) If *mem If UnpackMemory(*pak, *mem) = RealSize *Unpak_mem = *mem Else FreeMemory(*mem) EndIf EndIf EndIf ProcedureReturn *Unpak_mem EndProcedure Procedure ProgramItit_Thread(*x.ProgramItitThread) ;Получает полный путь запущенного приложения Result$ = ProgramFilename() ;Извлекает путь из полного пути. Например, если полный путь "C:\PureBasic\PB.exe", результат будет "C:\PureBasic\". Path$ = GetPathPart(Result$) ;Debug Path$ ; Просмотр всех элементов директории запущенного приложения (без поддиректорий) Directory$ = Path$ If ExamineDirectory(0, Directory$, "*.txt") ;m=0 While NextDirectoryEntry(0) If DirectoryEntryType(0) = #PB_DirectoryEntry_File AddGadgetItem(48, -1, Left(DirectoryEntryName(0), Len(DirectoryEntryName(0))-4)) EndIf ;txt.s=Text + ".txt" ; If DirectoryEntryName(0) = txt ; ; EndIf ;m=m+1 ;Debug DirectoryEntryName(0) ;+ Type$ + "- Size in byte: " + Str(DirectoryEntrySize(0)) Wend FinishDirectory(0) EndIf SetGadgetState(48, *x\text) If Put="" File$ = Path$ + GetGadgetText(48)+".txt" ; Debug File$ Else File$ = Put ; Debug File$ EndIf If FileSize(File$)>0 Text=ReadText(File$) SetGadgetText(49,Text) EndIf ;time=ElapsedMilliseconds() *mem = UnPak(?GismeteoCodSity_pak) If *mem Text.s = PeekS(*mem) FreeMemory(*mem) ReplaceString(Text,Chr(13),Chr(10), #PB_String_InPlace) Text=ReplaceString(Text,Chr(10)+Chr(10),Chr(10)) PosOld = 0 Pos = FindString(Text, Chr(10), 1) x=0 *PointString = @Text While Pos String.s=PeekS(*PointString+PosOld, Pos-PosOld-1) AddGadgetItem(#ComboBox_0, x,String) PosOld=Pos x+1 Pos = FindString(Text, Chr(10), PosOld+1) If Pos =< 0 Break EndIf Wend SetGadgetState(#ComboBox_0,*x\meteo) EndIf SityNew$= Left(GetGadgetText(#ComboBox_0), 5) If Len(SityNew$) GetMeteo(SityNew$) EndIf ;Debug ElapsedMilliseconds()-time EndProcedure Procedure Write_setting() ;Запись в файл настроек If OpenPreferences("setting.ini") WritePreferenceLong ("fr1", GetGadgetState (90)) WritePreferenceLong ("fr2", GetGadgetState (0)) WritePreferenceLong ("fr3", GetGadgetState (18)) WritePreferenceLong ("fr4", GetGadgetState (19)) WritePreferenceLong ("fr5", GetGadgetState (20)) WritePreferenceLong ("fr6", GetGadgetState (13)) WritePreferenceLong ("fr7", GetGadgetState (14)) WritePreferenceLong ("fr8", GetGadgetState (15)) WritePreferenceLong ("fr9", GetGadgetState (16)) WritePreferenceLong ("fr10", GetGadgetState (17)) WritePreferenceLong ("fr11", GetGadgetState (8)) WritePreferenceLong ("fr12", GetGadgetState (9)) WritePreferenceLong ("fr13", GetGadgetState (10)) WritePreferenceLong ("fr14", GetGadgetState (11)) WritePreferenceLong ("fr15", GetGadgetState (12)) WritePreferenceLong ("fr16", GetGadgetState (25)) WritePreferenceLong ("fr17", GetGadgetState (26)) WritePreferenceLong ("fr18", GetGadgetState (27)) WritePreferenceLong ("fr19", GetGadgetState (28)) WritePreferenceLong ("fr20", GetGadgetState (29)) WritePreferenceLong ("fr21", GetGadgetState (30)) WritePreferenceLong ("fr22", GetGadgetState (43)) WritePreferenceLong ("fr23", GetGadgetState (44)) WritePreferenceLong ("fr24", GetGadgetState (45)) WritePreferenceLong ("fr25", GetGadgetState (46)) WritePreferenceLong ("fr26", GetGadgetState (47)) WritePreferenceLong ("fr27", GetGadgetState (48)) WritePreferenceLong ("fr28", GetGadgetState (32)) WritePreferenceLong ("fr29", GetGadgetState (33)) WritePreferenceLong ("fr30", GetGadgetState (34)) WritePreferenceLong ("fr31", GetGadgetState (35)) WritePreferenceLong ("fr32", GetGadgetState (36)) WritePreferenceLong ("fr33", GetGadgetState (39)) WritePreferenceLong ("fr34", GetGadgetState (40)) WritePreferenceLong ("fr35", GetGadgetState (41)) WritePreferenceLong ("fr36", GetGadgetState (42)) WritePreferenceLong ("fr37", GetGadgetState (#ComboBox_0)) WritePreferenceLong ("fr38", GetGadgetState (4)) WritePreferenceLong ("fr39", GetGadgetState (5)) WritePreferenceLong ("fr40", GetGadgetState (6)) WritePreferenceLong ("fr41", GetGadgetState (7)) WritePreferenceLong ("fr42", GetGadgetState (24)) WritePreferenceString ("fr43", Put) ClosePreferences() EndIf EndProcedure Image.DrawInfo ;--------------------Окно программы--------------------- OpenWindow(0, 0, 0, 535, 186, "МОДЖЕТ 8x8", #PB_Window_MinimizeGadget|#PB_Window_ScreenCentered|#PB_Window_Invisible) ;--------------------Кнопки------------------- ContainerGadget(95,0,0,97,30, #PB_Container_BorderLess) If CreateToolBar(0, GadgetID(95)) ToolBarSeparator() ToolBarImageButton(1, CatchImage(1, ?ImageSave)) ToolBarToolTip(0, 1, "Добавить в автозагрузку") ToolBarSeparator() ToolBarImageButton(2, CatchImage(2, ?ImageDelete)) ToolBarToolTip(0, 2, "Удалить из автозагрузки") ToolBarSeparator() ToolBarImageButton(3, CatchImage(3, ?ImageInformation)) ToolBarToolTip(0, 3, "О программе") ToolBarSeparator() EndIf CloseGadgetList() ;--------------------Язык------------------- ComboBoxGadget(90,200,3,70,22) GadgetToolTip(90, "") AddGadgetItem(90,-1,"Русский") AddGadgetItem(90,-1,"English") SetGadgetState(90,0) Draw_Image(@Image) ImageGadget(82,6, 33,148,148,ImageID(80)) ;-----------Системный трей----------- AddSysTrayIcon(67, WindowID(0), ExtractIcon_(0,ProgramFilename(),0)) SysTrayIconToolTip(67, "МОДЖЕТ 8x8") ;Добавим к иконке меню CreatePopupMenu(68) ;MenuItem(4, "Развернуть") MenuItem(5, "") MenuBar() MenuItem(10, "") TextGadget(55, 387, 8, 120 ,15,"") TextGadget(56, 440, 8, 120 ,15, NO_Device) SetGadgetColor(56, #PB_Gadget_FrontColor, $0000FF) PanelGadget (0, 160, 33, 370, 150) ;--------------------Случайный------------------- AddGadgetItem (0, -1, "Случайный") TrackBarGadget(18, 17, 6, 165, 35, 0, 18, #PB_TrackBar_Ticks) TrackBarGadget(19, 17, 57, 165, 35, 0, 100, #PB_TrackBar_Ticks) TrackBarGadget(20, 214, 80, 99, 43, 0, 18, #PB_TrackBar_Ticks) ButtonGadget(21,320,87,23,23,"") TextGadget(22, 17, 39, 50 ,18,"") TextGadget(23, 17, 90, 50 ,13,"") OptionGadget(13, 214, 3, 80, 20, "") OptionGadget(14, 214, 23, 60, 20, "") OptionGadget(15, 214, 43, 90, 20, "") CheckBoxGadget(16, 214, 63, 70, 20, ""): SetGadgetState(16, #PB_Checkbox_Checked) CheckBoxGadget(17, 304, 63, 70, 20, ""): SetGadgetState(17, #PB_Checkbox_Checked) ;--------------------Время------------------- AddGadgetItem (0, -1,"Время") TrackBarGadget(8, 50, 16, 165, 35, 0, 300, #PB_TrackBar_Ticks) TextGadget(51, 50, 50, 50 ,13,"") OptionGadget(9, 250, 10, 60, 20, "") OptionGadget(10, 250, 32, 60, 20, "") OptionGadget(11, 250, 54, 60, 20, "") CheckBoxGadget(12, 250, 76, 70, 20, "") TextGadget(85, 90, 76, 90 ,13,"") TextGadget(84, 110, 90, 90 ,13,"") SetGadgetState(12, #PB_Checkbox_Checked) ;--------------------Курс валют------------------- AddGadgetItem (0, -1,"Курс валют") CheckBoxGadget(25, 11, 9, 70, 13, "") SetGadgetState(25, #PB_Checkbox_Checked) CheckBoxGadget(26, 89, 9, 60, 13, "") SetGadgetState(26, #PB_Checkbox_Checked) OptionGadget(27, 11, 99, 95, 20, "") OptionGadget(28, 115, 99, 90, 20, "") TrackBarGadget(29, 10, 52, 142, 35, 0, 300, #PB_TrackBar_Ticks) TextGadget(52, 10, 86, 50 ,13,"") ComboBoxGadget(30, 10, 28, 142, 21) AddGadgetItem(30, -1, "") AddGadgetItem(30, -1, "") SetGadgetState(30,0) EditorGadget(31,158,7,200,90) SendMessage_(GadgetID(31),#EM_SETTARGETDEVICE, #Null, 0) SetGadgetText(31,Many_uk()) ;--------------------Текст------------------- AddGadgetItem (0, -1,"Текст") CheckBoxGadget(43, 7, 35, 70, 13, "") SetGadgetState(43, #PB_Checkbox_Checked) CheckBoxGadget(44, 85, 35, 60, 13, "") SetGadgetState(44, #PB_Checkbox_Checked) OptionGadget(45, 11, 99, 95, 20, "") OptionGadget(46, 115, 99, 90, 20, "") TextGadget(75, 10, 86, 50 ,13,"") TrackBarGadget(47, 6, 51, 142, 35, 0, 300, #PB_TrackBar_Ticks) ComboBoxGadget(48, 205, 98, 153, 21) EditorGadget(49,158,7,200,90,#PB_Editor_ReadOnly) SendMessage_(GadgetID(49),#EM_SETTARGETDEVICE, #Null, 0) ButtonGadget(50,6,6,144,23,"") ;Получает полный путь запущенного приложения Result$ = ProgramFilename() ;Извлекает путь из полного пути. ;Например, если полный путь "C:\PureBasic\PB.exe", результат будет "C:\PureBasic\". Path$ = GetPathPart(Result$) ; Просмотр всех элементов директории запущенного приложения (без поддиректорий) Directory$ = Path$ ;--------------------Погода------------------- AddGadgetItem (0, -1,"Погода") CheckBoxGadget(32, 11, 9, 70, 13, "") SetGadgetState(32, #PB_Checkbox_Checked) CheckBoxGadget(33, 89, 9, 60, 13, "") SetGadgetState(33, #PB_Checkbox_Checked) OptionGadget(34, 11, 84, 94, 20, "") OptionGadget(35, 11, 102, 85, 20, "") TrackBarGadget(36, 10, 52, 142, 35, 0, 300, #PB_TrackBar_Ticks) ComboBoxGadget(#ComboBox_0, 10, 28, 142, 21) ButtonImageGadget(37,110,90,40,30, CatchImage(37, ?Image_ButtonImage_1)) GadgetToolTip(37, "") EditorGadget(38,158,7,200,90) OptionGadget(39, 160, 102, 30, 20, "6"): SetGadgetState(39, 1) GadgetToolTip(39, "Прогноз на 6 часов") OptionGadget(40, 215, 102, 40, 20, "12") GadgetToolTip(40, "Прогноз на 12 часов") OptionGadget(41, 270, 102, 40, 20, "18") GadgetToolTip(41, "Прогноз на 18 часов") OptionGadget(42, 325, 102, 40, 20, "24") GadgetToolTip(42, "Прогноз на сутки") ;--------------------Спектр------------------- AddGadgetItem (0, -1,"Спектр") TrackBarGadget(7, 27, 16, 165, 35, 0, 18, #PB_TrackBar_Ticks) TextGadget(76, 27, 51, 100 ,13,"") OptionGadget(4, 250, 10, 60, 20, "") OptionGadget(5, 250, 32, 60, 20, "") OptionGadget(6, 250, 54, 60, 20, "") CheckBoxGadget(24, 250, 76, 70, 20, "") SetGadgetState(24, #PB_Checkbox_Checked) CloseGadgetList() SetTimer_(WindowID(0), 2, 800, @FindDevice_Timer() ) ;--------------------Чтение настроек------------------- OpenPreferences("setting.ini") ; PreferenceGroup("Window") SetGadgetState(90, ReadPreferenceLong("fr1", 0)) SetGadgetState(0, ReadPreferenceLong("fr2", 0)) SetGadgetState(18, ReadPreferenceLong("fr3", 0)) SetGadgetState(19, ReadPreferenceLong("fr4", 0)) SetGadgetState(20, ReadPreferenceLong("fr5", 0)) SetGadgetState(13, ReadPreferenceLong("fr6", 0)) SetGadgetState(14, ReadPreferenceLong("fr7", 0)) SetGadgetState(15, ReadPreferenceLong("fr8", 0)) SetGadgetState(16, ReadPreferenceLong("fr9", 0)) SetGadgetState(17, ReadPreferenceLong("fr10", 0)) SetGadgetState(8, ReadPreferenceLong("fr11", 0)) SetGadgetState(9, ReadPreferenceLong("fr12", 0)) SetGadgetState(10, ReadPreferenceLong("fr13", 0)) SetGadgetState(11, ReadPreferenceLong("fr14", 0)) SetGadgetState(12, ReadPreferenceLong("fr15", 0)) SetGadgetState(25, ReadPreferenceLong("fr16", 0)) SetGadgetState(26, ReadPreferenceLong("fr17", 0)) SetGadgetState(27, ReadPreferenceLong("fr18", 0)) SetGadgetState(28, ReadPreferenceLong("fr19", 0)) SetGadgetState(29, ReadPreferenceLong("fr20", 0)) SetGadgetState(30, ReadPreferenceLong("fr21", 0)) SetGadgetState(43, ReadPreferenceLong("fr22", 0)) SetGadgetState(44, ReadPreferenceLong("fr23", 0)) SetGadgetState(45, ReadPreferenceLong("fr24", 0)) SetGadgetState(46, ReadPreferenceLong("fr25", 0)) SetGadgetState(47, ReadPreferenceLong("fr26", 0)) ProgramItitThread\text = ReadPreferenceLong("fr27", 0) SetGadgetState(32, ReadPreferenceLong("fr28", 0)) SetGadgetState(33, ReadPreferenceLong("fr29", 0)) SetGadgetState(34, ReadPreferenceLong("fr30", 0)) SetGadgetState(35, ReadPreferenceLong("fr31", 0)) SetGadgetState(36, ReadPreferenceLong("fr32", 0)) SetGadgetState(39, ReadPreferenceLong("fr33", 0)) SetGadgetState(40, ReadPreferenceLong("fr34", 0)) SetGadgetState(41, ReadPreferenceLong("fr35", 0)) SetGadgetState(42, ReadPreferenceLong("fr36", 0)) ProgramItitThread\meteo=ReadPreferenceLong("fr37", 0) SetGadgetState(4, ReadPreferenceLong("fr38", 0)) SetGadgetState(5, ReadPreferenceLong("fr39", 0)) SetGadgetState(6, ReadPreferenceLong("fr40", 0)) SetGadgetState(7, ReadPreferenceLong("fr41", 0)) SetGadgetState(24, ReadPreferenceLong("fr42", 0)) Put=ReadPreferenceString("fr43", "") ClosePreferences() CreateThread(@ProgramItit_Thread(),ProgramItitThread) If GetGadgetState(90)=0 LoadText("rus.lng") Else LoadText("eng.lng") EndIf If GetGadgetState(30)=0 SetGadgetText(31,Many_uk()) Else SetGadgetText(31,Many_ru()) EndIf If OpenLibrary(1,"user32.dll")=0 ; Открываем файл "user32.dll", для использования его функций MessageRequester(Lib1, Lib2 +#CRLF$+Lib3+" user32.dll", #MB_OK|#MB_ICONWARNING) EndIf CallFunction(1,"SetTimer",WindowID(0), 1, 500, @DateTime() ) ; Вызываем функцию "SetTimer" HideWindow(0,0) ;--------------------Главный цикл--------------------- Repeat Event= WaitWindowEvent() Window=EventWindow() Gadget=EventGadget() If Event = #PB_Event_SysTray If EventType() = #PB_EventType_RightClick ; Обработка правой кнопки мышки Write_setting() Break ; DisplayPopupMenu(68, WindowID(0)) ; показ вспывающего меню EndIf If EventType() = #PB_EventType_LeftClick ; Обработка левой кнопки мышки HideWindow(0, 0) SetWindowState(0, #PB_Window_Normal) EndIf If EventType() = #PB_EventType_LeftDoubleClick ; Обработка двойного нажатия левой кнопки мышки HideWindow(0, 1) EndIf EndIf If Event = #PB_Event_Menu Select EventMenu() Case 1 ;"Добавить в автозагрузку" ProgramAtStartup(1, "MODGET 8x8") Case 2 ;"Удалить из автозагрузки" ProgramAtStartup(0, "MODGET 8x8") Case 3 ;"О программе" Open_Window_1() ; Case 5 ;"Свернуть" ; HideWindow(0, 1) ; Case 10 ;"Выход" ; Write_setting() ; Break EndSelect EndIf If Event=#PB_Event_MinimizeWindow ;Событие при сворачивании окна HideWindow(0,1) ;свернуть окно EndIf ;{-------Событие при закрытии окна------- If Event=#PB_Event_CloseWindow ; Write_setting() EndIf ;}------------------------------------- ;{----------События компонентов---------- If Event=#PB_Event_Gadget Select EventGadget() Case 13 If GetGadgetState (13) = 1 ImageGadget(83,20,20,148,148, 0) Draw_Image(@Image) SetTimer_(WindowID(0),4,100, @Timer1() ) EndIf Case 30 If EventType()=1 Select GetGadgetState(30) Case 0 SetGadgetText(31,Many_uk()) Case 1 SetGadgetText(31,Many_ru()) EndSelect EndIf Case 37 GetMeteo(SityNew$) Case #ComboBox_0 If EventType() = 1 SityNew$= Left(GetGadgetText(#ComboBox_0), 5) If Len(SityNew$) GetMeteo(SityNew$) EndIf EndIf Case 39 To 42 ; Выбор времени прогноза SetEditorMemeo(@G_Meteo_Info) Case 48 If EventType() = 1 ; Выпадающий список закрылся Put="" File$ = Path$ + GetGadgetText(48)+".txt" Text=ReadText(File$) SetGadgetText(49,Text) EndIf Case 50 File$ = OpenFileRequester(open, "", Maska , 0) If File$ Put=File$ Text=ReadText(File$) SetGadgetText(49,Text) EndIf Case 90 If EventType()=1 Select GetGadgetState(90) Case 0 LoadText("rus.lng") Case 1 LoadText("eng.lng") EndSelect EndIf Case 66 CloseWindow(#Window_1) Case 100 ProgramAtStartup(1, "MODGET 8x8") Case 101 ProgramAtStartup(0, "MODGET 8x8") Case 102 Open_Window_1() EndSelect EndIf ;}------------------------------------- Until Event = #PB_Event_CloseWindow ;Конец главного цикла ; Вызываем функцию "KillTimer" CallFunction(1,"KillTimer",WindowID(0),1) ; Закрываем файл "user32.dll". CloseLibrary(1) ;{ Included Data DataSection Image_ButtonImage_1: IncludeBinary "refresh.ico" ImageSave: IncludeBinary "accept.png" ImageDelete: IncludeBinary "delete.png" ImageInformation: IncludeBinary "information.png" GismeteoCodSity_pak: IncludeBinary "GismeteoCodSity.pak" Many_ru: Data.s "1 Австралийский доллар", "1 Азербайджанский манат", "1000 Армянских драмов", "10000 Белорусских рублей" Data.s "1 Болгарский лев", "1 Бразильский реал", "100 Венгерских форинтов ", "1000 Вон Республики Корея" Data.s "10 Датских крон", "1 Доллар США", "1 Евро", "100 Индийских рупий", "100 Казахских тенге" Data.s "1 Канадский доллар", "100 Киргизских сомов", "10 Китайских юаней", "1 Латвийский лат" Data.s "1 Литовский лит", "10 Молдавских леев", "10 Новых румынских леев", "10 Новых туркменских манатов" Data.s "10 Норвежских крон", "1 Польский злотый", "1 СДР (специальные права заимствования)", "1 Сингапурский доллар" Data.s "10 Таджикских сомони", "1 Турецкая лира", "1000 Узбекских сумов", "10 Украинских гривен" Data.s "1 Фунт стерлингов Соединенного королевства", "10 Чешских крон", "10 Шведских крон", "1 Швейцарский франк" Data.s "10 Южноафриканских рэндов", "100 Японских иен" Many_uk: Data.s "100 австралійських доларів", "100 азербайджанських манатів", "100 англійських фунтів стерлінгів", "10 білоруських рублів" Data.s "100 датських крон", "100 доларів США", "100 ЄВРО ", "100 ісландських крон" Data.s "100 казахстанських тенге", "100 канадських доларів", "100 латвійських латів", "100 литовських літів", "100 молдовських леїв" Data.s "100 норвезьких крон", "100 польських злотих", "10 російських рублів", "100 сінгапурських доларів" Data.s "100 СПЗ", "100 турецьких лір", "100 туркменських манатів", "1000 угорських форинтів" Data.s "100 узбецьких сумів", "100 чеських крон", "100 шведських крон", "100 швейцарських франків" Data.s "100 юанів женьміньбі (Китай)", "1000 японських єн" EndDataSection ;} ; IDE Options = PureBasic 4.50 (Windows - x86) ; CursorPosition = 733 ; FirstLine = 211 ; Folding = QAAk2 ; EnableThread ; EnableXP ; UseIcon = M.ico ; Executable = MODGET 8x8 multilang.exe ; SubSystem = UserLibThreadSafe ; CompileSourceDirectory
Отредактировано max (06.07.2011 12:34:02)
Поделиться24406.07.2011 12:45:04
Нормально все.
Поделиться24506.07.2011 12:49:21
Странно!
Поделиться24606.07.2011 12:49:46
Можно попробовать так загружать текст.
Но не уверен что поможет.
Procedure.s ReadText(File$) Protected Text.s = "" If ReadFile(0, File$) Size = Lof(0); размер файла в байтах If Size>0 *String = AllocateMemory(Size+10); выделяем область памяти If *String FillMemory(*String, Size+10, 0) FormatFile=ReadStringFormat(0) ; Определение кодировки файла (Ascii, UTF8 или Unicode). ReadData(0, *String , Size); записываем строку в область памяти FillMemory(*String+Size, 8, 0) Text.s=PeekS(*String, -1, FormatFile) FreeMemory(*String) EndIf EndIf CloseFile(0) EndIf ProcedureReturn Text EndProcedure
Поделиться24706.07.2011 12:59:07
Сейчас все
Поделиться24806.07.2011 13:21:07
Наверное настало время для вывода всего этого на форму.
Для начала нужно создать шрифты. Чтобы вывести отдельные точки, делаем так:
Image\row[0]=%11001100 Image\row[1]=%00111100 Image\row[6]=%01010101 Image\row[7]=%10101010
Теперь вопрос:
Как мне лучше сделать шрифт: как в исходнике в Code_table.vb
или надо оформлять в процедуру?
Вот эффект RANDOM.
Код:Structure DrawInfo row.b[8] EndStructure CreateImage(0,148,148); Procedure Draw_Image(*Infa.DrawInfo) If StartDrawing(ImageOutput(0)) Box(0,0,148,148,0) ; Очистка рисунка For col = 0 To 7 For row = 0 To 7 x = 20 + col * 15 y = 20 + row * 15 If *Infa\row[row] << col & %10000000 Color = RGB(210, 27, 45) Else Color = RGB(131, 137, 141) EndIf Circle(x, y, 5, Color) Next Next StopDrawing() EndIf SetGadgetState(0, ImageID(0)) EndProcedure Procedure Timer1() ImageDraw.DrawInfo For i=0 To 7 ImageDraw\row[i] = Random(255) Next i Draw_Image(@ImageDraw) EndProcedure Image.DrawInfo If OpenWindow(0, 0, 0, 277, 260, "О", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) ImageGadget(0,20,20,148,148, 0) Draw_Image(@Image) SetTimer_(WindowID(0),2,100, @Timer1() ) Repeat Event = WaitWindowEvent() Until Event = #PB_Event_CloseWindow EndIf
Я его добавил в исходник, а он рабатает только тогда, когда нажимаешь на "Случайный". Что я не так сделал?
Поделиться24906.07.2011 14:16:25
Как мне лучше сделать шрифт: как в исходнике в Code_table.vb
Копировать от туда и помещать в ДатаСекцию.
а он рабатает только тогда, когда нажимаешь на "Случайный". Что я не так сделал?
Не совсем точно перенес код. http://pure-basic.narod.ru/forum/MODGET … tilang.rar
Нужно будет функции переключать в зависимости от активной вкладки панели.
Поделиться25006.07.2011 14:31:55
Копировать от туда и помещать в ДатаСекцию.
То есть так: буква А
DataSection Data 0, 0, 1, 1, 1, 1, 1, 0, Data 0, 1, 0, 0, 0, 1, 1, 0, Data 1, 1, 0, 0, 0, 1, 1, 0, Data 1, 1, 0, 0, 0, 1, 1, 0, Data 1, 1, 1, 1, 1, 1, 1, 0, Data 1, 1, 0, 0, 0, 1, 1, 0, Data 1, 1, 0, 0, 0, 1, 1, 0, Data 0, 0, 0, 0, 0, 0, 0, 0 EndDataSection
Не совсем точно перенес код.
Теперь работает.
Отредактировано max (06.07.2011 14:47:16)
Поделиться25106.07.2011 15:01:26
То есть так: буква А
В нашем случае, будет примерно так:
DataSection Data.b %00111110 Data.b %01000110 Data.b %11000110 Data.b %11000110 Data.b %11111110 Data.b %11000110 Data.b %11000110 Data.b %00000000 EndDataSection
Structure DrawInfo row.b[8] EndStructure CreateImage(0,148,148); Procedure Draw_Image(*Infa.DrawInfo) If StartDrawing(ImageOutput(0)) Box(0,0,148,148,0) ; Очистка рисунка For col = 0 To 7 For row = 0 To 7 x = 20 + col * 15 y = 20 + row * 15 If *Infa\row[row] << col & %10000000 Color = RGB(210, 27, 45) Else Color = RGB(131, 137, 141) EndIf Circle(x, y, 5, Color) Next Next StopDrawing() EndIf SetGadgetState(0, ImageID(0)) EndProcedure Image.DrawInfo If OpenWindow(0, 0, 0, 277, 260, "О", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) ImageGadget(0,20,20,148,148, 0) CopyMemory(?Char_A, @Image, SizeOf(DrawInfo)) Draw_Image(@Image) Repeat Event = WaitWindowEvent() Until Event = #PB_Event_CloseWindow EndIf DataSection Char_A: Data.b %00111110 Data.b %01000110 Data.b %11000110 Data.b %11000110 Data.b %11111110 Data.b %11000110 Data.b %11000110 Data.b %00000000 EndDataSection
Поделиться25206.07.2011 15:06:57
Спасибо.
Буду алфавит переносить.
Поделиться25306.07.2011 21:23:45
48 символов сделал.
Можно ли сделать, чтобы они переберались по кругу?
Поделиться25406.07.2011 21:46:17
Как-то так (работу не проверял).
Structure DrawInfo row.b[8] EndStructure CreateImage(0,148,148); Procedure Draw_Image(*Infa.DrawInfo) If StartDrawing(ImageOutput(0)) Box(0,0,148,148,0) ; Очистка рисунка For col = 0 To 7 For row = 0 To 7 x = 20 + col * 15 y = 20 + row * 15 If *Infa\row[row] << col & %10000000 Color = RGB(210, 27, 45) Else Color = RGB(131, 137, 141) EndIf Circle(x, y, 5, Color) Next Next StopDrawing() EndIf SetGadgetState(0, ImageID(0)) EndProcedure Image.DrawInfo If OpenWindow(0, 0, 0, 277, 260, "О", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) ImageGadget(0,20,20,148,148, 0) CopyMemory(?Char_A, @Image, SizeOf(DrawInfo)) Draw_Image(@Image) AddWindowTimer(0,0,1000) Pos=0 Repeat Event = WaitWindowEvent() If Event = #PB_Event_Timer Pos+1 If Pos>=48 Pos = 0 EndIf CopyMemory(?Char_A+Pos*8, @Image, SizeOf(DrawInfo)) Draw_Image(@Image) EndIf Until Event = #PB_Event_CloseWindow EndIf DataSection Char_A: Data.b %00111110 Data.b %01000110 Data.b %11000110 Data.b %11000110 Data.b %11111110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ; Тут остальные 47 символов. EndDataSection
Поделиться25506.07.2011 21:59:44
Спасибо, работает.
Поделиться25607.07.2011 20:18:33
Получился 161 знак.
Structure DrawInfo row.b[8] EndStructure CreateImage(0,148,148); Procedure Draw_Image(*Infa.DrawInfo) If StartDrawing(ImageOutput(0)) Box(83,0,148,148,0) ; Очистка рисунка For col = 0 To 7 For row = 0 To 7 x = 20 + col * 15 y = 20 + row * 15 If *Infa\row[row] << col & %10000000 Color = RGB(255, 102, 00) Else Color = RGB(102, 102, 102) EndIf Circle(x, y, 5, Color) Next Next StopDrawing() EndIf SetGadgetState(0, ImageID(0)) EndProcedure Image.DrawInfo If OpenWindow(0, 0, 0, 277, 260, "О", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) ImageGadget(0,20,20,148,148, 0) CopyMemory(?Char_1, @Image, SizeOf(DrawInfo)) Draw_Image(@Image) AddWindowTimer(0,0,1000) Pos=0 Repeat Event = WaitWindowEvent() If Event = #PB_Event_Timer Pos+1 If Pos>=161 Pos = 0 EndIf CopyMemory(?Char_1+Pos*8, @Image, SizeOf(DrawInfo)) Draw_Image(@Image) EndIf Until Event = #PB_Event_CloseWindow EndIf DataSection ;0 Char_1: Data.b %01111100 Data.b %11000110 Data.b %11001110 Data.b %11010110 Data.b %11100110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;1 Char_2: Data.b %00011000 Data.b %00111000 Data.b %01111000 Data.b %00011000 Data.b %00011000 Data.b %00011000 Data.b %01111110 Data.b %00000000 ;2 Char_3: Data.b %01111100 Data.b %11000110 Data.b %11000110 Data.b %00001100 Data.b %00010000 Data.b %01100110 Data.b %11111110 Data.b %00000000 ;3 Char_4: Data.b %11111110 Data.b %11000110 Data.b %00001000 Data.b %00011100 Data.b %11000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;4 Char_5: Data.b %00001100 Data.b %00011100 Data.b %00101100 Data.b %01001100 Data.b %11001110 Data.b %11111110 Data.b %00001100 Data.b %00000000 ;5 Char_6: Data.b %11111110 Data.b %11000110 Data.b %11000000 Data.b %11111100 Data.b %00000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;6 Char_7: Data.b %01111100 Data.b %11000110 Data.b %11000000 Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;7 Char_8: Data.b %11111110 Data.b %11000110 Data.b %00000110 Data.b %00011000 Data.b %00011000 Data.b %00110000 Data.b %00110000 Data.b %00000000 ;8 Char_9: Data.b %01111100 Data.b %11000110 Data.b %11000110 Data.b %01111100 Data.b %11000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;9 Char_10: Data.b %01111100 Data.b %11000110 Data.b %11000110 Data.b %01111110 Data.b %00000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;! Char_11: Data.b %00011000 Data.b %00011000 Data.b %00011000 Data.b %00011000 Data.b %00011000 Data.b %00000000 Data.b %00011000 Data.b %00000000 ;" Char_12: Data.b %00110110 Data.b %00100100 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 ;% Char_13: Data.b %11100010 Data.b %10100100 Data.b %11101000 Data.b %00010000 Data.b %00101110 Data.b %01001010 Data.b %10001110 Data.b %00000000 ;$ Char_14: Data.b %01111100 Data.b %11010110 Data.b %11010000 Data.b %01111100 Data.b %00010110 Data.b %11010110 Data.b %01111100 Data.b %00010000 ;& Char_15: Data.b %00110000 Data.b %01001000 Data.b %01001000 Data.b %00110000 Data.b %01001010 Data.b %01000100 Data.b %00111010 Data.b %00000000 ;# Char_16: Data.b %00000000 Data.b %00000000 Data.b %00010100 Data.b %01111110 Data.b %00101000 Data.b %11111100 Data.b %01010000 Data.b %00000000 ;' Char_17: Data.b %00001000 Data.b %00001000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 ;( Char_18: Data.b %00011000 Data.b %00110000 Data.b %01100000 Data.b %01100000 Data.b %01100000 Data.b %00110000 Data.b %00011000 Data.b %00000000 ;) Char_19: Data.b %00011000 Data.b %00001100 Data.b %00000110 Data.b %00000110 Data.b %00000110 Data.b %00001100 Data.b %00011000 Data.b %00000000 ;* Char_20: Data.b %00010000 Data.b %01010100 Data.b %00111000 Data.b %11111110 Data.b %00111000 Data.b %01010100 Data.b %00010000 Data.b %00000000 ;+ Char_21: Data.b %00000000 Data.b %00011000 Data.b %00011000 Data.b %01111110 Data.b %01111110 Data.b %00011000 Data.b %00011000 Data.b %00000000 ;, Char_22: Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00011000 Data.b %00001000 Data.b %00010000 ;- Char_23: Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %01111110 Data.b %01111110 Data.b %00000000 Data.b %00000000 Data.b %00000000 ;. Char_24: Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00011000 Data.b %00011000 Data.b %00000000 ;/ Char_25: Data.b %00000110 Data.b %00001100 Data.b %00011000 Data.b %00110000 Data.b %01100000 Data.b %11000000 Data.b %10000000 Data.b %00000000 ;: Char_26: Data.b %00011000 Data.b %00011000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00011000 Data.b %00011000 Data.b %00000000 ;; Char_27: Data.b %00011000 Data.b %00011000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00011000 Data.b %00001000 Data.b %00010000 ;< Char_28: Data.b %00000110 Data.b %00001100 Data.b %00011000 Data.b %00110000 Data.b %00011000 Data.b %00001100 Data.b %00000110 Data.b %00000000 ;= Char_29: Data.b %00000000 Data.b %01111100 Data.b %01111100 Data.b %00000000 Data.b %01111100 Data.b %01111100 Data.b %00000000 Data.b %00000000 ;> Char_30: Data.b %01100000 Data.b %00110000 Data.b %00011000 Data.b %00001100 Data.b %00011000 Data.b %00110000 Data.b %01100000 Data.b %00000000 ;? Char_31: Data.b %00111100 Data.b %01100110 Data.b %01100110 Data.b %00001100 Data.b %00011000 Data.b %00011000 Data.b %00000000 Data.b %00011000 ;@ Char_32: Data.b %01111100 Data.b %11000010 Data.b %10011010 Data.b %10101010 Data.b %10111010 Data.b %10001100 Data.b %01100000 Data.b %00000000 ;A Char_33: Data.b %00111110 Data.b %01000110 Data.b %11000110 Data.b %11000110 Data.b %11111110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;B Char_34: Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %11111100 Data.b %00000000 ;C Char_35: Data.b %01111100 Data.b %11000110 Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;D Char_36: Data.b %11111000 Data.b %11000100 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000100 Data.b %11111000 Data.b %00000000 ;E Char_37: Data.b %11111110 Data.b %11000110 Data.b %11000000 Data.b %11111000 Data.b %11000000 Data.b %11000110 Data.b %11111110 Data.b %00000000 ;F Char_38: Data.b %11111110 Data.b %11000110 Data.b %11000000 Data.b %11111000 Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %00000000 ;G Char_39: Data.b %01111100 Data.b %11000110 Data.b %11000110 Data.b %11000000 Data.b %11011110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;H Char_40: Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11111110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;I Char_41: Data.b %00111100 Data.b %00011000 Data.b %00011000 Data.b %00011000 Data.b %00011000 Data.b %00011000 Data.b %00111100 Data.b %00000000 ;J Char_42: Data.b %00000110 Data.b %00000110 Data.b %00000110 Data.b %00000110 Data.b %11000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;K Char_43: Data.b %11000110 Data.b %11000110 Data.b %11001100 Data.b %11111000 Data.b %11001100 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;L Char_44: Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %11000110 Data.b %11111110 Data.b %00000000 ;M Char_45: Data.b %11000110 Data.b %11000110 Data.b %11101110 Data.b %11010110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;N Char_46: Data.b %11000110 Data.b %11000110 Data.b %11100110 Data.b %11010110 Data.b %11001110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;O Char_47: Data.b %01111100 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;P Char_48: Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11111100 Data.b %11000000 Data.b %11000000 Data.b %00000000 ;Q Char_49: Data.b %01111100 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11010110 Data.b %11001110 Data.b %01111100 Data.b %00000010 ;R Char_50: Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11111100 Data.b %11001100 Data.b %11000110 Data.b %00000000 ;S Char_51: Data.b %01111100 Data.b %11000110 Data.b %11000000 Data.b %01111100 Data.b %00000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;T Char_52: Data.b %11111110 Data.b %11010110 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00000000 ;U Char_53: Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11111110 Data.b %01111100 Data.b %00000000 ;V Char_54: Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %01101100 Data.b %00111000 Data.b %00000000 ;W Char_55: Data.b %11000110 Data.b %11000110 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %01111100 Data.b %00101000 Data.b %00000000 ;X Char_56: Data.b %11000110 Data.b %11000110 Data.b %01101100 Data.b %00010000 Data.b %01101100 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;Y Char_57: Data.b %11000110 Data.b %11000110 Data.b %01000100 Data.b %00101000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00000000 ;Z Char_58: Data.b %11111110 Data.b %11000100 Data.b %00001000 Data.b %00010000 Data.b %00100000 Data.b %01000110 Data.b %11111110 Data.b %00000000 ;[ Char_59: Data.b %01110000 Data.b %01100000 Data.b %01100000 Data.b %01100000 Data.b %01100000 Data.b %01100000 Data.b %01110000 Data.b %00000000 ;\ Char_60: Data.b %11000000 Data.b %01100000 Data.b %00110000 Data.b %00011000 Data.b %00001100 Data.b %00000110 Data.b %00000010 Data.b %00000000 ;] Char_61: Data.b %01110000 Data.b %00110000 Data.b %00110000 Data.b %00110000 Data.b %00110000 Data.b %00110000 Data.b %01110000 Data.b %00000000 ;^ Char_62: Data.b %00010000 Data.b %00111000 Data.b %01101100 Data.b %01000100 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 ;_ Char_63: Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %11111110 Data.b %11111110 Data.b %00000000 ;` Char_64: Data.b %01000000 Data.b %00100000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 ;a Char_65: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %00000100 Data.b %00111100 Data.b %01000100 Data.b %00111100 Data.b %00000000 ;b Char_66: Data.b %01000000 Data.b %01000000 Data.b %01000000 Data.b %01111000 Data.b %01000100 Data.b %01000100 Data.b %01111000 Data.b %00000000 ;c Char_67: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000000 Data.b %01000000 Data.b %01000100 Data.b %00111000 Data.b %00000000 ;d Char_68: Data.b %00000100 Data.b %00000100 Data.b %00110100 Data.b %01001100 Data.b %01000100 Data.b %01000100 Data.b %00111100 Data.b %00000000 ;e Char_69: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %01111000 Data.b %01000000 Data.b %00111000 Data.b %00000000 ;f Char_70: Data.b %00011000 Data.b %00100100 Data.b %00100000 Data.b %01110000 Data.b %00100000 Data.b %00100000 Data.b %00100000 Data.b %00000000 ;g Char_71: Data.b %00000000 Data.b %00111100 Data.b %01000100 Data.b %01000100 Data.b %00111100 Data.b %00000100 Data.b %00111000 Data.b %00000000 ;h Char_72: Data.b %01000000 Data.b %01000000 Data.b %01011000 Data.b %01100100 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %00000000 ;i Char_73: Data.b %00010000 Data.b %00000000 Data.b %00110000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00111000 Data.b %00000000 ;j Char_74: Data.b %00001000 Data.b %00000000 Data.b %00011000 Data.b %00001000 Data.b %00001000 Data.b %01001000 Data.b %00110000 Data.b %00000000 ;k Char_75: Data.b %01000000 Data.b %01000000 Data.b %01001000 Data.b %01010000 Data.b %01100000 Data.b %01010000 Data.b %01001000 Data.b %00000000 ;l Char_76: Data.b %00110000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00111000 Data.b %00000000 ;m Char_77: Data.b %00000000 Data.b %00000000 Data.b %01101000 Data.b %01010100 Data.b %01010100 Data.b %01000100 Data.b %01000100 Data.b %00000000 ;n Char_78: Data.b %00000000 Data.b %00000000 Data.b %01011000 Data.b %01100100 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %00000000 ;o Char_79: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %00111000 Data.b %00000000 ;p Char_80: Data.b %00000000 Data.b %00000000 Data.b %01111000 Data.b %01000100 Data.b %01111000 Data.b %01000000 Data.b %01000000 Data.b %00000000 ;q Char_81: Data.b %00000000 Data.b %00000000 Data.b %00111100 Data.b %01000100 Data.b %00111100 Data.b %00000100 Data.b %00000100 Data.b %00000000 ;r Char_82: Data.b %00000000 Data.b %00000000 Data.b %01011000 Data.b %01100100 Data.b %01000000 Data.b %01000000 Data.b %01000000 Data.b %00000000 ;s Char_83: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000000 Data.b %00111000 Data.b %00000100 Data.b %01111000 Data.b %00000000 ;t Char_84: Data.b %00100000 Data.b %00100000 Data.b %01110000 Data.b %00100000 Data.b %00100000 Data.b %00100100 Data.b %00011000 Data.b %00000000 ;u Char_85: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %01001100 Data.b %00110100 Data.b %00000000 ;v Char_86: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %00101000 Data.b %00010000 Data.b %00000000 ;w Char_87: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %01010100 Data.b %00101000 Data.b %00000000 ;x Char_88: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %00101000 Data.b %00010000 Data.b %00101000 Data.b %01000100 Data.b %00000000 ;y Char_89: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01000100 Data.b %00111100 Data.b %00000100 Data.b %00111000 Data.b %00000000 ;z Char_90: Data.b %00000000 Data.b %00000000 Data.b %01111100 Data.b %00001000 Data.b %00010000 Data.b %00100000 Data.b %01111100 Data.b %00000000 ;{ Char_91: Data.b %00001100 Data.b %00010000 Data.b %00100000 Data.b %01100000 Data.b %00100000 Data.b %00010000 Data.b %00001100 Data.b %00000000 ;| Char_92: Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00000000 ;} Char_93: Data.b %01100000 Data.b %00010000 Data.b %00001000 Data.b %00001100 Data.b %00001000 Data.b %00010000 Data.b %01100000 Data.b %00000000 ;~ Char_94: Data.b %00100100 Data.b %01011000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 ;А Char_95: Data.b %00111110 Data.b %01000110 Data.b %11000110 Data.b %11000110 Data.b %11111110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;Б Char_96: Data.b %11111110 Data.b %11000110 Data.b %11000000 Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %11111100 Data.b %00000000 ;В Char_97: Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %11111100 Data.b %00000000 ;Г Char_98: Data.b %11111110 Data.b %11000110 Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %00000000 ;Д Char_99: Data.b %00001110 Data.b %00010110 Data.b %00100110 Data.b %01100110 Data.b %01100110 Data.b %11111111 Data.b %11000011 Data.b %00000000 ;Е Char_100: Data.b %11111110 Data.b %11000110 Data.b %11000000 Data.b %11111000 Data.b %11000000 Data.b %11000110 Data.b %11111110 Data.b %00000000 ;Ё Char_101: Data.b %00101000 Data.b %00000000 Data.b %11111110 Data.b %11000010 Data.b %11111000 Data.b %11000010 Data.b %11111110 Data.b %00000000 ;Ж Char_102: Data.b %11010110 Data.b %11010110 Data.b %01111100 Data.b %00111000 Data.b %01111100 Data.b %11010110 Data.b %11010110 Data.b %00000000 ;З Char_103: Data.b %01111100 Data.b %11000110 Data.b %00000110 Data.b %00011100 Data.b %00000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;И Char_104: Data.b %11000110 Data.b %11000110 Data.b %11001110 Data.b %11011110 Data.b %11110110 Data.b %11100110 Data.b %11000110 Data.b %00000000 ;Й Char_105: Data.b %11010110 Data.b %11000110 Data.b %11001110 Data.b %11011110 Data.b %11110110 Data.b %11100110 Data.b %11000110 Data.b %00000000 ;К Char_106: Data.b %11000110 Data.b %11000110 Data.b %11001100 Data.b %11111000 Data.b %11001100 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;Л Char_107: Data.b %00111110 Data.b %01100110 Data.b %01100110 Data.b %01100110 Data.b %01100110 Data.b %01100110 Data.b %11000110 Data.b %00000000 ;М Char_108: Data.b %11000110 Data.b %11000110 Data.b %11101110 Data.b %11010110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;Н Char_109: Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11111110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;О Char_110: Data.b %01111100 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;П Char_111: Data.b %11111110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;Р Char_112: Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11111100 Data.b %11000000 Data.b %11000000 Data.b %00000000 ;С Char_113: Data.b %01111100 Data.b %11000110 Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;Т Char_114: Data.b %11111110 Data.b %11010110 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00000000 ;У Char_115: Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %01111110 Data.b %00000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;Ф Char_116: Data.b %01111100 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %01111100 Data.b %00010000 Data.b %00000000 ;Х Char_117: Data.b %11000110 Data.b %11000110 Data.b %01101100 Data.b %00010000 Data.b %01101100 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;Ц Char_118: Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11111110 Data.b %00000011 ;Ч Char_119: Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %01111110 Data.b %00000110 Data.b %00000110 Data.b %00000000 ;Ш Char_120: Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11111110 Data.b %00000000 ;Щ Char_121: Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11111111 Data.b %00000011 ;Ъ Char_122: Data.b %11100000 Data.b %01100000 Data.b %01100000 Data.b %01111100 Data.b %01100110 Data.b %01100110 Data.b %01111100 Data.b %00000000 ;Ы Char_123: Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11100110 Data.b %11010110 Data.b %11010110 Data.b %11100110 Data.b %00000000 ;Ь Char_124: Data.b %01100000 Data.b %01100000 Data.b %01100000 Data.b %01111100 Data.b %01100110 Data.b %01100110 Data.b %01111100 Data.b %00000000 ;Э Char_125: Data.b %01111100 Data.b %11000110 Data.b %00000110 Data.b %00111110 Data.b %00000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;Ю Char_126: Data.b %11001100 Data.b %11010110 Data.b %11010110 Data.b %11110110 Data.b %11010110 Data.b %11010110 Data.b %11001100 Data.b %00000000 ;Я Char_127: Data.b %01111110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %01111110 Data.b %00110110 Data.b %11100110 Data.b %00000000 ;а Char_128: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %00111010 Data.b %00000000 ;б Char_129: Data.b %01111100 Data.b %00100000 Data.b %00010000 Data.b %00111000 Data.b %01000100 Data.b %01000100 Data.b %00111000 Data.b %00000000 ;в Char_130: Data.b %00110000 Data.b %01001000 Data.b %01001000 Data.b %01111000 Data.b %01000100 Data.b %01000100 Data.b %00111000 Data.b %00000000 ;г Char_131: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %00000100 Data.b %00111000 Data.b %01000000 Data.b %00111100 Data.b %00000000 ;д Char_132: Data.b %00000000 Data.b %00000000 Data.b %00011100 Data.b %00100100 Data.b %00100100 Data.b %01111110 Data.b %01000010 Data.b %00000000 ;е Char_133: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %01111000 Data.b %01000000 Data.b %00111000 Data.b %00000000 ;ё Char_134: Data.b %00101000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %01111000 Data.b %01000000 Data.b %00111000 Data.b %00000000 ;ж Char_135: Data.b %00000000 Data.b %00000000 Data.b %01010100 Data.b %01010100 Data.b %00111000 Data.b %01010100 Data.b %01010100 Data.b %00000000 ;з Char_136: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %00001000 Data.b %01000100 Data.b %00111000 Data.b %00000000 ;и Char_137: Data.b %00000000 Data.b %00000000 Data.b %01001000 Data.b %01001000 Data.b %01001000 Data.b %01001000 Data.b %00110100 Data.b %00000000 ;й Char_138: Data.b %00000000 Data.b %00010000 Data.b %01001000 Data.b %01001000 Data.b %01001000 Data.b %01001000 Data.b %00110100 Data.b %00000000 ;к Char_139: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01001000 Data.b %01110000 Data.b %01001000 Data.b %01000100 Data.b %00000000 ;л Char_140: Data.b %00000000 Data.b %00000000 Data.b %00011100 Data.b %00100100 Data.b %00100100 Data.b %00100100 Data.b %01000100 Data.b %00000000 ;м Char_141: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01101100 Data.b %01010100 Data.b %01000100 Data.b %01000100 Data.b %00000000 ;н Char_142: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01000100 Data.b %01111100 Data.b %01000100 Data.b %01000100 Data.b %00000000 ;о Char_143: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %00111000 Data.b %00000000 ;п Char_144: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %00000000 ;р Char_145: Data.b %00000000 Data.b %00000000 Data.b %01111000 Data.b %01000100 Data.b %01000100 Data.b %01111000 Data.b %01000000 Data.b %00000000 ;с Char_146: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %01000000 Data.b %01000100 Data.b %00111000 Data.b %00000000 ;т Char_147: Data.b %00000000 Data.b %00000000 Data.b %00101000 Data.b %01010100 Data.b %01010100 Data.b %01010100 Data.b %01010010 Data.b %00000000 ;у Char_148: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01000100 Data.b %00111100 Data.b %00000100 Data.b %00111000 Data.b %00000000 ;ф Char_149: Data.b %00000000 Data.b %00010000 Data.b %00111000 Data.b %01010100 Data.b %01010100 Data.b %00111000 Data.b %00010000 Data.b %00000000 ;х Char_150: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %00101000 Data.b %00010000 Data.b %00101000 Data.b %01000100 Data.b %00000000 ;ц Char_151: Data.b %00000000 Data.b %00000000 Data.b %01001000 Data.b %01001000 Data.b %01001000 Data.b %01001000 Data.b %00111100 Data.b %00000100 ;ч Char_152: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %00111100 Data.b %00000100 Data.b %00000000 ;ш Char_153: Data.b %00000000 Data.b %00000000 Data.b %01010100 Data.b %01010100 Data.b %01010100 Data.b %01010100 Data.b %00111100 Data.b %00000000 ;щ Char_154: Data.b %00000000 Data.b %00000000 Data.b %01010100 Data.b %01010100 Data.b %01010100 Data.b %01010100 Data.b %00111110 Data.b %00000010 ;ъ Char_155: Data.b %00000000 Data.b %00000000 Data.b %11000000 Data.b %01000000 Data.b %01110000 Data.b %01001000 Data.b %01110000 Data.b %00000000 ;ы Char_156: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01000100 Data.b %01100100 Data.b %01010100 Data.b %01100100 Data.b %00000000 ;ь Char_157: Data.b %00000000 Data.b %00000000 Data.b %01000000 Data.b %01000000 Data.b %01110000 Data.b %01001000 Data.b %01110000 Data.b %00000000 ;э Char_158: Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %00000100 Data.b %00011100 Data.b %01000100 Data.b %00111000 Data.b %00000000 ;ю Char_159: Data.b %00000000 Data.b %00000000 Data.b %01001000 Data.b %01010100 Data.b %01100100 Data.b %01010100 Data.b %01001000 Data.b %00000000 ;я Char_160: Data.b %00000000 Data.b %00000000 Data.b %00111100 Data.b %01000100 Data.b %00111100 Data.b %00010100 Data.b %01100100 Data.b %00000000 ;№ Char_161: Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %10010110 Data.b %11010110 Data.b %10110000 Data.b %10010110 Data.b %00000000 EndDataSection
Что теперь дальше делать?
Поделиться25707.07.2011 21:30:51
Что теперь дальше делать?
Сдвиг данных.
Вот пример сдвига одного символа.
Structure DrawInfo row.b[8] EndStructure CreateImage(0,148,148); Procedure Draw_Image(*Infa.DrawInfo) If StartDrawing(ImageOutput(0)) Box(0,0,148,148,0) ; Очистка рисунка For col = 0 To 7 For row = 0 To 7 x = 20 + col * 15 y = 20 + row * 15 If *Infa\row[row] << col & %10000000 Color = RGB(210, 27, 45) Else Color = RGB(131, 137, 141) EndIf Circle(x, y, 5, Color) Next Next StopDrawing() EndIf SetGadgetState(0, ImageID(0)) EndProcedure Procedure Shift(*Image.DrawInfo) For i=0 To 7 *Image\row[i]<<1 Next i Draw_Image(*Image) EndProcedure Image.DrawInfo If OpenWindow(0, 0, 0, 277, 260, "О", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) ImageGadget(0,20,20,148,148, 0) CopyMemory(?Char_A, @Image, SizeOf(DrawInfo)) Draw_Image(@Image) AddWindowTimer(0,0,1000) Pos=0 Repeat Event = WaitWindowEvent() If Event = #PB_Event_Timer Shift(Image) EndIf Until Event = #PB_Event_CloseWindow EndIf DataSection Char_A: Data.b %00111110 Data.b %01000110 Data.b %11000110 Data.b %11000110 Data.b %11111110 Data.b %11000110 Data.b %11000110 Data.b %00000000 EndDataSection
Поделиться25807.07.2011 22:24:27
Сдвиг данных.
Спасибо.
Вот пример сдвига одного символа.
А как сделать для всех?
Поделиться25908.07.2011 08:44:06
Следующее - это, наверное, процедура распознования символа в EditorGadget и поисвоения ему соответствующего значения из DataSection?
Поделиться26008.07.2011 11:08:21
процедура распознования символа в EditorGadget и поисвоения ему соответствующего значения из DataSection?
Код символа можно получить при помощи функции Asc.
Соответствие кодов их символов можно увидеть в окне "Таблица ASCII" из меню "Инструменты".
Поделиться26108.07.2011 16:37:38
при помощи функции Asc.
Спасибо, но эта функция возвращает значение только первого символа строки.
Следующие, я думаю, надо организоввывать с помощью Shift. А как это организовать?
Поделиться26208.07.2011 18:50:49
Спасибо, но эта функция возвращает значение только первого символа строки.
Ну а что мешает пройтись по всем символам?
String.s="Это строка текста" Len = Len(String) For i=1 To Len Debug Asc(Mid(String, i, 1)) Next i
Но можно упростить до этого, но программа должна быть в формате ASCII, потому что с юникодом такой номер не пройдет.
String.s="Это строка текста" Len = Len(String) - 1 For i=0 To Len Debug PeekA(@String+i) Next i
Поделиться26308.07.2011 19:47:11
Спасибо.
Поделиться26408.07.2011 21:43:19
Что-то не могу сообразить как это все соеденить в кучу.
Поделиться26510.07.2011 19:34:14
Что-то не могу сообразить как это все соеденить в кучу.
Так толком ни чего не придумал. Единственное, что сделал, это:
String.s=Many_uk() Len = Len(String) For i=1 To Len Debug Asc(Mid(String, i, 1)) Next i
А дальше темный лес. Можно пример?
Поделиться26611.07.2011 23:21:35
Данные симоволов надо было располагать в порядке их нахождения в таблице ASCII (см. инструменты пурика), что значително обрагчает доступ к ним. Переделал.
Получился от такой, немного корявый код, но рабочий.
Structure DrawInfo row.a[8] EndStructure CreateImage(0,148,148); Procedure Draw_Image(*Infa.DrawInfo) If StartDrawing(ImageOutput(0)) Box(83,0,148,148,0) ; Очистка рисунка For col = 0 To 7 For row = 0 To 7 x = 20 + col * 15 y = 20 + row * 15 If *Infa\row[row] << col & %10000000 Color = RGB(255, 102, 00) Else Color = RGB(102, 102, 102) EndIf Circle(x, y, 5, Color) Next Next StopDrawing() EndIf SetGadgetState(0, ImageID(0)) EndProcedure Procedure GetChar(Char.a, *Draw.DrawInfo) FillMemory(*Draw, SizeOf(DrawInfo), 0) ; Чистим сторуктуру - забиваем ее нулями Select Char Case '!' To '~' CopyMemory(?Char_11+(Char-'!')*8, *Draw, SizeOf(DrawInfo)) Case 'А' To 'я' CopyMemory(?Char_95+(Char-'А')*8, *Draw, SizeOf(DrawInfo)) Case 'Ё' CopyMemory(?Char_101, *Draw, SizeOf(DrawInfo)) Case 'ё' CopyMemory(?Char_134, *Draw, SizeOf(DrawInfo)) Case '№' CopyMemory(?Char_161, *Draw, SizeOf(DrawInfo)) EndSelect EndProcedure Procedure Timer1() Shared ShiftString_Pos Shared ShiftString_String_Pos Shared ShiftString_String.s Static ShiftDraw.DrawInfo, ShiftTemp.DrawInfo Protected Len, i Len=Len(ShiftString_String) If Len>1 If ShiftString_String_Pos>=Len ShiftString_String_Pos = 0 EndIf If ShiftString_Pos>8 ShiftString_Pos=0 EndIf If ShiftString_Pos=0 GetChar(PeekA(@ShiftString_String+ShiftString_String_Pos), ShiftTemp) Debug Chr(PeekA(@ShiftString_String+ShiftString_String_Pos)) ShiftString_String_Pos+1 EndIf For i=0 To 7 ShiftDraw\row[i] << 1 If ShiftTemp\row[i] & %10000000 ShiftDraw\row[i] | 1 Else ShiftDraw\row[i] & %11111110 EndIf ShiftTemp\row[i] << 1 Next i ShiftString_Pos+1 Else ShiftString_Pos=0 ShiftString_String_Pos=0 FillMemory(ShiftDraw, SizeOf(DrawInfo), 0) EndIf Draw_Image(ShiftDraw) EndProcedure If OpenWindow(0, 0, 0, 277, 260, "О", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) ImageGadget(0,20,20,148,148, 0) ShiftString_String.s = "Строка текста" SetTimer_(WindowID(0),0,200, @Timer1()) Repeat Event = WaitWindowEvent() Until Event = #PB_Event_CloseWindow EndIf DataSection ;! Char_11: Data.b %00011000 Data.b %00011000 Data.b %00011000 Data.b %00011000 Data.b %00011000 Data.b %00000000 Data.b %00011000 Data.b %00000000 ;" Char_12: Data.b %00110110 Data.b %00100100 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 ;# Char_16: Data.b %00000000 Data.b %00000000 Data.b %00010100 Data.b %01111110 Data.b %00101000 Data.b %11111100 Data.b %01010000 Data.b %00000000 ;$ Char_14: Data.b %01111100 Data.b %11010110 Data.b %11010000 Data.b %01111100 Data.b %00010110 Data.b %11010110 Data.b %01111100 Data.b %00010000 ;% Char_13: Data.b %11100010 Data.b %10100100 Data.b %11101000 Data.b %00010000 Data.b %00101110 Data.b %01001010 Data.b %10001110 Data.b %00000000 ;& Char_15: Data.b %00110000 Data.b %01001000 Data.b %01001000 Data.b %00110000 Data.b %01001010 Data.b %01000100 Data.b %00111010 Data.b %00000000 ;' Char_17: Data.b %00001000 Data.b %00001000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 ;( Char_18: Data.b %00011000 Data.b %00110000 Data.b %01100000 Data.b %01100000 Data.b %01100000 Data.b %00110000 Data.b %00011000 Data.b %00000000 ;) Char_19: Data.b %00011000 Data.b %00001100 Data.b %00000110 Data.b %00000110 Data.b %00000110 Data.b %00001100 Data.b %00011000 Data.b %00000000 ;* Char_20: Data.b %00010000 Data.b %01010100 Data.b %00111000 Data.b %11111110 Data.b %00111000 Data.b %01010100 Data.b %00010000 Data.b %00000000 ;+ Char_21: Data.b %00000000 Data.b %00011000 Data.b %00011000 Data.b %01111110 Data.b %01111110 Data.b %00011000 Data.b %00011000 Data.b %00000000 ;, Char_22: Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00011000 Data.b %00001000 Data.b %00010000 ;- Char_23: Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %01111110 Data.b %01111110 Data.b %00000000 Data.b %00000000 Data.b %00000000 ;. Char_24: Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00011000 Data.b %00011000 Data.b %00000000 ;/ Char_25: Data.b %00000110 Data.b %00001100 Data.b %00011000 Data.b %00110000 Data.b %01100000 Data.b %11000000 Data.b %10000000 Data.b %00000000 ;0 Char_1: Data.b %01111100 Data.b %11000110 Data.b %11001110 Data.b %11010110 Data.b %11100110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;1 Char_2: Data.b %00011000 Data.b %00111000 Data.b %01111000 Data.b %00011000 Data.b %00011000 Data.b %00011000 Data.b %01111110 Data.b %00000000 ;2 Char_3: Data.b %01111100 Data.b %11000110 Data.b %11000110 Data.b %00001100 Data.b %00010000 Data.b %01100110 Data.b %11111110 Data.b %00000000 ;3 Char_4: Data.b %11111110 Data.b %11000110 Data.b %00001000 Data.b %00011100 Data.b %11000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;4 Char_5: Data.b %00001100 Data.b %00011100 Data.b %00101100 Data.b %01001100 Data.b %11001110 Data.b %11111110 Data.b %00001100 Data.b %00000000 ;5 Char_6: Data.b %11111110 Data.b %11000110 Data.b %11000000 Data.b %11111100 Data.b %00000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;6 Char_7: Data.b %01111100 Data.b %11000110 Data.b %11000000 Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;7 Char_8: Data.b %11111110 Data.b %11000110 Data.b %00000110 Data.b %00011000 Data.b %00011000 Data.b %00110000 Data.b %00110000 Data.b %00000000 ;8 Char_9: Data.b %01111100 Data.b %11000110 Data.b %11000110 Data.b %01111100 Data.b %11000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;9 Char_10: Data.b %01111100 Data.b %11000110 Data.b %11000110 Data.b %01111110 Data.b %00000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;: Char_26: Data.b %00011000 Data.b %00011000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00011000 Data.b %00011000 Data.b %00000000 ;; Char_27: Data.b %00011000 Data.b %00011000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00011000 Data.b %00001000 Data.b %00010000 ;< Char_28: Data.b %00000110 Data.b %00001100 Data.b %00011000 Data.b %00110000 Data.b %00011000 Data.b %00001100 Data.b %00000110 Data.b %00000000 ;= Char_29: Data.b %00000000 Data.b %01111100 Data.b %01111100 Data.b %00000000 Data.b %01111100 Data.b %01111100 Data.b %00000000 Data.b %00000000 ;> Char_30: Data.b %01100000 Data.b %00110000 Data.b %00011000 Data.b %00001100 Data.b %00011000 Data.b %00110000 Data.b %01100000 Data.b %00000000 ;? Char_31: Data.b %00111100 Data.b %01100110 Data.b %01100110 Data.b %00001100 Data.b %00011000 Data.b %00011000 Data.b %00000000 Data.b %00011000 ;@ Char_32: Data.b %01111100 Data.b %11000010 Data.b %10011010 Data.b %10101010 Data.b %10111010 Data.b %10001100 Data.b %01100000 Data.b %00000000 ;A Char_33: Data.b %00111110 Data.b %01000110 Data.b %11000110 Data.b %11000110 Data.b %11111110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;B Char_34: Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %11111100 Data.b %00000000 ;C Char_35: Data.b %01111100 Data.b %11000110 Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;D Char_36: Data.b %11111000 Data.b %11000100 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000100 Data.b %11111000 Data.b %00000000 ;E Char_37: Data.b %11111110 Data.b %11000110 Data.b %11000000 Data.b %11111000 Data.b %11000000 Data.b %11000110 Data.b %11111110 Data.b %00000000 ;F Char_38: Data.b %11111110 Data.b %11000110 Data.b %11000000 Data.b %11111000 Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %00000000 ;G Char_39: Data.b %01111100 Data.b %11000110 Data.b %11000110 Data.b %11000000 Data.b %11011110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;H Char_40: Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11111110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;I Char_41: Data.b %00111100 Data.b %00011000 Data.b %00011000 Data.b %00011000 Data.b %00011000 Data.b %00011000 Data.b %00111100 Data.b %00000000 ;J Char_42: Data.b %00000110 Data.b %00000110 Data.b %00000110 Data.b %00000110 Data.b %11000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;K Char_43: Data.b %11000110 Data.b %11000110 Data.b %11001100 Data.b %11111000 Data.b %11001100 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;L Char_44: Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %11000110 Data.b %11111110 Data.b %00000000 ;M Char_45: Data.b %11000110 Data.b %11000110 Data.b %11101110 Data.b %11010110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;N Char_46: Data.b %11000110 Data.b %11000110 Data.b %11100110 Data.b %11010110 Data.b %11001110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;O Char_47: Data.b %01111100 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;P Char_48: Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11111100 Data.b %11000000 Data.b %11000000 Data.b %00000000 ;Q Char_49: Data.b %01111100 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11010110 Data.b %11001110 Data.b %01111100 Data.b %00000010 ;R Char_50: Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11111100 Data.b %11001100 Data.b %11000110 Data.b %00000000 ;S Char_51: Data.b %01111100 Data.b %11000110 Data.b %11000000 Data.b %01111100 Data.b %00000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;T Char_52: Data.b %11111110 Data.b %11010110 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00000000 ;U Char_53: Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11111110 Data.b %01111100 Data.b %00000000 ;V Char_54: Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %01101100 Data.b %00111000 Data.b %00000000 ;W Char_55: Data.b %11000110 Data.b %11000110 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %01111100 Data.b %00101000 Data.b %00000000 ;X Char_56: Data.b %11000110 Data.b %11000110 Data.b %01101100 Data.b %00010000 Data.b %01101100 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;Y Char_57: Data.b %11000110 Data.b %11000110 Data.b %01000100 Data.b %00101000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00000000 ;Z Char_58: Data.b %11111110 Data.b %11000100 Data.b %00001000 Data.b %00010000 Data.b %00100000 Data.b %01000110 Data.b %11111110 Data.b %00000000 ;[ Char_59: Data.b %01110000 Data.b %01100000 Data.b %01100000 Data.b %01100000 Data.b %01100000 Data.b %01100000 Data.b %01110000 Data.b %00000000 ;\ Char_60: Data.b %11000000 Data.b %01100000 Data.b %00110000 Data.b %00011000 Data.b %00001100 Data.b %00000110 Data.b %00000010 Data.b %00000000 ;] Char_61: Data.b %01110000 Data.b %00110000 Data.b %00110000 Data.b %00110000 Data.b %00110000 Data.b %00110000 Data.b %01110000 Data.b %00000000 ;^ Char_62: Data.b %00010000 Data.b %00111000 Data.b %01101100 Data.b %01000100 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 ;_ Char_63: Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %11111110 Data.b %11111110 Data.b %00000000 ;` Char_64: Data.b %01000000 Data.b %00100000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 ;a Char_65: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %00000100 Data.b %00111100 Data.b %01000100 Data.b %00111100 Data.b %00000000 ;b Char_66: Data.b %01000000 Data.b %01000000 Data.b %01000000 Data.b %01111000 Data.b %01000100 Data.b %01000100 Data.b %01111000 Data.b %00000000 ;c Char_67: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000000 Data.b %01000000 Data.b %01000100 Data.b %00111000 Data.b %00000000 ;d Char_68: Data.b %00000100 Data.b %00000100 Data.b %00110100 Data.b %01001100 Data.b %01000100 Data.b %01000100 Data.b %00111100 Data.b %00000000 ;e Char_69: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %01111000 Data.b %01000000 Data.b %00111000 Data.b %00000000 ;f Char_70: Data.b %00011000 Data.b %00100100 Data.b %00100000 Data.b %01110000 Data.b %00100000 Data.b %00100000 Data.b %00100000 Data.b %00000000 ;g Char_71: Data.b %00000000 Data.b %00111100 Data.b %01000100 Data.b %01000100 Data.b %00111100 Data.b %00000100 Data.b %00111000 Data.b %00000000 ;h Char_72: Data.b %01000000 Data.b %01000000 Data.b %01011000 Data.b %01100100 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %00000000 ;i Char_73: Data.b %00010000 Data.b %00000000 Data.b %00110000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00111000 Data.b %00000000 ;j Char_74: Data.b %00001000 Data.b %00000000 Data.b %00011000 Data.b %00001000 Data.b %00001000 Data.b %01001000 Data.b %00110000 Data.b %00000000 ;k Char_75: Data.b %01000000 Data.b %01000000 Data.b %01001000 Data.b %01010000 Data.b %01100000 Data.b %01010000 Data.b %01001000 Data.b %00000000 ;l Char_76: Data.b %00110000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00111000 Data.b %00000000 ;m Char_77: Data.b %00000000 Data.b %00000000 Data.b %01101000 Data.b %01010100 Data.b %01010100 Data.b %01000100 Data.b %01000100 Data.b %00000000 ;n Char_78: Data.b %00000000 Data.b %00000000 Data.b %01011000 Data.b %01100100 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %00000000 ;o Char_79: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %00111000 Data.b %00000000 ;p Char_80: Data.b %00000000 Data.b %00000000 Data.b %01111000 Data.b %01000100 Data.b %01111000 Data.b %01000000 Data.b %01000000 Data.b %00000000 ;q Char_81: Data.b %00000000 Data.b %00000000 Data.b %00111100 Data.b %01000100 Data.b %00111100 Data.b %00000100 Data.b %00000100 Data.b %00000000 ;r Char_82: Data.b %00000000 Data.b %00000000 Data.b %01011000 Data.b %01100100 Data.b %01000000 Data.b %01000000 Data.b %01000000 Data.b %00000000 ;s Char_83: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000000 Data.b %00111000 Data.b %00000100 Data.b %01111000 Data.b %00000000 ;t Char_84: Data.b %00100000 Data.b %00100000 Data.b %01110000 Data.b %00100000 Data.b %00100000 Data.b %00100100 Data.b %00011000 Data.b %00000000 ;u Char_85: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %01001100 Data.b %00110100 Data.b %00000000 ;v Char_86: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %00101000 Data.b %00010000 Data.b %00000000 ;w Char_87: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %01010100 Data.b %00101000 Data.b %00000000 ;x Char_88: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %00101000 Data.b %00010000 Data.b %00101000 Data.b %01000100 Data.b %00000000 ;y Char_89: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01000100 Data.b %00111100 Data.b %00000100 Data.b %00111000 Data.b %00000000 ;z Char_90: Data.b %00000000 Data.b %00000000 Data.b %01111100 Data.b %00001000 Data.b %00010000 Data.b %00100000 Data.b %01111100 Data.b %00000000 ;{ Char_91: Data.b %00001100 Data.b %00010000 Data.b %00100000 Data.b %01100000 Data.b %00100000 Data.b %00010000 Data.b %00001100 Data.b %00000000 ;| Char_92: Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00000000 ;} Char_93: Data.b %01100000 Data.b %00010000 Data.b %00001000 Data.b %00001100 Data.b %00001000 Data.b %00010000 Data.b %01100000 Data.b %00000000 ;~ Char_94: Data.b %00100100 Data.b %01011000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %00000000 ;А Char_95: Data.b %00111110 Data.b %01000110 Data.b %11000110 Data.b %11000110 Data.b %11111110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;Б Char_96: Data.b %11111110 Data.b %11000110 Data.b %11000000 Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %11111100 Data.b %00000000 ;В Char_97: Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %11111100 Data.b %00000000 ;Г Char_98: Data.b %11111110 Data.b %11000110 Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %00000000 ;Д Char_99: Data.b %00001110 Data.b %00010110 Data.b %00100110 Data.b %01100110 Data.b %01100110 Data.b %11111111 Data.b %11000011 Data.b %00000000 ;Е Char_100: Data.b %11111110 Data.b %11000110 Data.b %11000000 Data.b %11111000 Data.b %11000000 Data.b %11000110 Data.b %11111110 Data.b %00000000 ;Ж Char_102: Data.b %11010110 Data.b %11010110 Data.b %01111100 Data.b %00111000 Data.b %01111100 Data.b %11010110 Data.b %11010110 Data.b %00000000 ;З Char_103: Data.b %01111100 Data.b %11000110 Data.b %00000110 Data.b %00011100 Data.b %00000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;И Char_104: Data.b %11000110 Data.b %11000110 Data.b %11001110 Data.b %11011110 Data.b %11110110 Data.b %11100110 Data.b %11000110 Data.b %00000000 ;Й Char_105: Data.b %11010110 Data.b %11000110 Data.b %11001110 Data.b %11011110 Data.b %11110110 Data.b %11100110 Data.b %11000110 Data.b %00000000 ;К Char_106: Data.b %11000110 Data.b %11000110 Data.b %11001100 Data.b %11111000 Data.b %11001100 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;Л Char_107: Data.b %00111110 Data.b %01100110 Data.b %01100110 Data.b %01100110 Data.b %01100110 Data.b %01100110 Data.b %11000110 Data.b %00000000 ;М Char_108: Data.b %11000110 Data.b %11000110 Data.b %11101110 Data.b %11010110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;Н Char_109: Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11111110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;О Char_110: Data.b %01111100 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;П Char_111: Data.b %11111110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;Р Char_112: Data.b %11111100 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11111100 Data.b %11000000 Data.b %11000000 Data.b %00000000 ;С Char_113: Data.b %01111100 Data.b %11000110 Data.b %11000000 Data.b %11000000 Data.b %11000000 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;Т Char_114: Data.b %11111110 Data.b %11010110 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00010000 Data.b %00000000 ;У Char_115: Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %01111110 Data.b %00000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;Ф Char_116: Data.b %01111100 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %01111100 Data.b %00010000 Data.b %00000000 ;Х Char_117: Data.b %11000110 Data.b %11000110 Data.b %01101100 Data.b %00010000 Data.b %01101100 Data.b %11000110 Data.b %11000110 Data.b %00000000 ;Ц Char_118: Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11111110 Data.b %00000011 ;Ч Char_119: Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %01111110 Data.b %00000110 Data.b %00000110 Data.b %00000000 ;Ш Char_120: Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11111110 Data.b %00000000 ;Щ Char_121: Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11010110 Data.b %11111111 Data.b %00000011 ;Ъ Char_122: Data.b %11100000 Data.b %01100000 Data.b %01100000 Data.b %01111100 Data.b %01100110 Data.b %01100110 Data.b %01111100 Data.b %00000000 ;Ы Char_123: Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %11100110 Data.b %11010110 Data.b %11010110 Data.b %11100110 Data.b %00000000 ;Ь Char_124: Data.b %01100000 Data.b %01100000 Data.b %01100000 Data.b %01111100 Data.b %01100110 Data.b %01100110 Data.b %01111100 Data.b %00000000 ;Э Char_125: Data.b %01111100 Data.b %11000110 Data.b %00000110 Data.b %00111110 Data.b %00000110 Data.b %11000110 Data.b %01111100 Data.b %00000000 ;Ю Char_126: Data.b %11001100 Data.b %11010110 Data.b %11010110 Data.b %11110110 Data.b %11010110 Data.b %11010110 Data.b %11001100 Data.b %00000000 ;Я Char_127: Data.b %01111110 Data.b %11000110 Data.b %11000110 Data.b %11000110 Data.b %01111110 Data.b %00110110 Data.b %11100110 Data.b %00000000 ;а Char_128: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %00111010 Data.b %00000000 ;б Char_129: Data.b %01111100 Data.b %00100000 Data.b %00010000 Data.b %00111000 Data.b %01000100 Data.b %01000100 Data.b %00111000 Data.b %00000000 ;в Char_130: Data.b %00110000 Data.b %01001000 Data.b %01001000 Data.b %01111000 Data.b %01000100 Data.b %01000100 Data.b %00111000 Data.b %00000000 ;г Char_131: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %00000100 Data.b %00111000 Data.b %01000000 Data.b %00111100 Data.b %00000000 ;д Char_132: Data.b %00000000 Data.b %00000000 Data.b %00011100 Data.b %00100100 Data.b %00100100 Data.b %01111110 Data.b %01000010 Data.b %00000000 ;е Char_133: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %01111000 Data.b %01000000 Data.b %00111000 Data.b %00000000 ;ж Char_135: Data.b %00000000 Data.b %00000000 Data.b %01010100 Data.b %01010100 Data.b %00111000 Data.b %01010100 Data.b %01010100 Data.b %00000000 ;з Char_136: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %00001000 Data.b %01000100 Data.b %00111000 Data.b %00000000 ;и Char_137: Data.b %00000000 Data.b %00000000 Data.b %01001000 Data.b %01001000 Data.b %01001000 Data.b %01001000 Data.b %00110100 Data.b %00000000 ;й Char_138: Data.b %00000000 Data.b %00010000 Data.b %01001000 Data.b %01001000 Data.b %01001000 Data.b %01001000 Data.b %00110100 Data.b %00000000 ;к Char_139: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01001000 Data.b %01110000 Data.b %01001000 Data.b %01000100 Data.b %00000000 ;л Char_140: Data.b %00000000 Data.b %00000000 Data.b %00011100 Data.b %00100100 Data.b %00100100 Data.b %00100100 Data.b %01000100 Data.b %00000000 ;м Char_141: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01101100 Data.b %01010100 Data.b %01000100 Data.b %01000100 Data.b %00000000 ;н Char_142: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01000100 Data.b %01111100 Data.b %01000100 Data.b %01000100 Data.b %00000000 ;о Char_143: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %00111000 Data.b %00000000 ;п Char_144: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %00000000 ;р Char_145: Data.b %00000000 Data.b %00000000 Data.b %01111000 Data.b %01000100 Data.b %01000100 Data.b %01111000 Data.b %01000000 Data.b %00000000 ;с Char_146: Data.b %00000000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %01000000 Data.b %01000100 Data.b %00111000 Data.b %00000000 ;т Char_147: Data.b %00000000 Data.b %00000000 Data.b %00101000 Data.b %01010100 Data.b %01010100 Data.b %01010100 Data.b %01010010 Data.b %00000000 ;у Char_148: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01000100 Data.b %00111100 Data.b %00000100 Data.b %00111000 Data.b %00000000 ;ф Char_149: Data.b %00000000 Data.b %00010000 Data.b %00111000 Data.b %01010100 Data.b %01010100 Data.b %00111000 Data.b %00010000 Data.b %00000000 ;х Char_150: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %00101000 Data.b %00010000 Data.b %00101000 Data.b %01000100 Data.b %00000000 ;ц Char_151: Data.b %00000000 Data.b %00000000 Data.b %01001000 Data.b %01001000 Data.b %01001000 Data.b %01001000 Data.b %00111100 Data.b %00000100 ;ч Char_152: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01000100 Data.b %01000100 Data.b %00111100 Data.b %00000100 Data.b %00000000 ;ш Char_153: Data.b %00000000 Data.b %00000000 Data.b %01010100 Data.b %01010100 Data.b %01010100 Data.b %01010100 Data.b %00111100 Data.b %00000000 ;щ Char_154: Data.b %00000000 Data.b %00000000 Data.b %01010100 Data.b %01010100 Data.b %01010100 Data.b %01010100 Data.b %00111110 Data.b %00000010 ;ъ Char_155: Data.b %00000000 Data.b %00000000 Data.b %11000000 Data.b %01000000 Data.b %01110000 Data.b %01001000 Data.b %01110000 Data.b %00000000 ;ы Char_156: Data.b %00000000 Data.b %00000000 Data.b %01000100 Data.b %01000100 Data.b %01100100 Data.b %01010100 Data.b %01100100 Data.b %00000000 ;ь Char_157: Data.b %00000000 Data.b %00000000 Data.b %01000000 Data.b %01000000 Data.b %01110000 Data.b %01001000 Data.b %01110000 Data.b %00000000 ;э Char_158: Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %00000100 Data.b %00011100 Data.b %01000100 Data.b %00111000 Data.b %00000000 ;ю Char_159: Data.b %00000000 Data.b %00000000 Data.b %01001000 Data.b %01010100 Data.b %01100100 Data.b %01010100 Data.b %01001000 Data.b %00000000 ;я Char_160: Data.b %00000000 Data.b %00000000 Data.b %00111100 Data.b %01000100 Data.b %00111100 Data.b %00010100 Data.b %01100100 Data.b %00000000 ;Ё Char_101: Data.b %00101000 Data.b %00000000 Data.b %11111110 Data.b %11000010 Data.b %11111000 Data.b %11000010 Data.b %11111110 Data.b %00000000 ;ё Char_134: Data.b %00101000 Data.b %00000000 Data.b %00111000 Data.b %01000100 Data.b %01111000 Data.b %01000000 Data.b %00111000 Data.b %00000000 ;№ Char_161: Data.b %00000000 Data.b %00000000 Data.b %00000000 Data.b %10010110 Data.b %11010110 Data.b %10110000 Data.b %10010110 Data.b %00000000 EndDataSection
Поделиться26712.07.2011 15:49:56
Данные симоволов надо было располагать
Сначала сделал, а потом увидел как надо было.
Переделал.
Спасибо.
Получился от такой
За это отдельное спасибо.
Поделиться26812.07.2011 16:58:27
Вот код матрици на VB:
'MATRIX If RadioButton2.Checked = True Then Timer1.Interval = TrackBar2.Value * 10 Dim col, row For col = 7 To 1 Step -1 For row = 0 To 7 st_led = (8 * col + row) ellipseRect = New Rectangle(x(st_led), y(st_led), 13, 13) If buf_USB(st_led - 8) = 1 Then myPath.AddEllipse(ellipseRect) buf_USB(st_led) = 1 Else myPath1.AddEllipse(ellipseRect) buf_USB(st_led) = 0 End If Next Next For row = 0 To 7 st_led = row ellipseRect = New Rectangle(x(st_led), y(st_led), 13, 13) random = Int(Rnd() * (20 - TrackBar1.Value)) If random = 1 Then If CheckBox2.Checked = False Then myPath1.AddEllipse(ellipseRect) buf_USB(st_led) = 0 Else myPath.AddEllipse(ellipseRect) buf_USB(st_led) = 1 End If Else If CheckBox2.Checked = False Then myPath.AddEllipse(ellipseRect) buf_USB(st_led) = 1 Else myPath1.AddEllipse(ellipseRect) buf_USB(st_led) = 0 End If End If Next End If
Пытаюсь перевести на пурик:
For d = 7 To 1 Step -1 For e = 0 To 7 st_led = (8 * e + d) ; ellipseRect = New Rectangle(x(st_led), y(st_led), 13, 13) Next e Next d For d = 0 To 7 st_led = d ; ellipseRect = New Rectangle(x(st_led), y(st_led), 13, 13) Next
Вместо
ellipseRect = New Rectangle(x(st_led), y(st_led), 13, 13)
Думаю надо применить ImageDraw. А как это сделать?
Поделиться26912.07.2011 18:08:29
Пытаюсь перевести на пурик:
Чем не подошла процедура Draw_Image?
Поделиться27012.07.2011 18:19:33
Должно быть так?
Procedure Draw_Image(*Infa.DrawInfo) If StartDrawing(ImageOutput(0)) Box(83,0,148,148,0) ; Очистка рисунка For col = 7 To 1 Step -1 For row = 0 To 7 x = 8 * row + col y = 8 * row + col Next row Next col For row = 0 To 7 x = row y = row Next row If *Infa\row[row] << col & %10000000 Color = RGB(255, 102, 00) Else Color = RGB(102, 102, 102) EndIf Circle(x, y, 5, Color) Next Next StopDrawing() EndIf SetGadgetState(0, ImageID(0)) EndProcedure