Kreator Tabelografiki/kody

Z MruczekWiki

To są kody programu Kreator Tabelografiki. Aby z nich korzystać, należy je wkleić do programu Microsoft Small Basic i je uruchomić.

Kreator tabelografiki 0.1

GraphicsWindow.Title = "Kreator Tabelografiki" 

GraphicsWindow.Width = 600 
GraphicsWindow.Height = 400 

GraphicsWindow.BackgroundColor = "#66CCFF" 

GraphicsWindow.BrushColor = "#003399" 

GraphicsWindow.FontSize = 9 

GraphicsWindow.DrawText(10,10,"Lokalizacja pliku graficznego (z dysku lub neta):") 

Txt_lok_obrazka = Controls.AddTextBox(10,30) 
Controls.SetSize(Txt_lok_obrazka,260,20) 

GraphicsWindow.DrawText(10,60,"Rozmiar tabeli w komórkach (szerokość x wysokość):") 
GraphicsWindow.DrawText(90,85,"Sugerowany max: 60") 

Txt_tab_x = Controls.AddTextBox(10,80) 
Controls.SetSize(Txt_tab_x,30,20) 

GraphicsWindow.DrawText(42,85,"x") 

Txt_tab_y = Controls.AddTextBox(50,80) 
Controls.SetSize(Txt_tab_y,30,20) 

przy_załaduj_obrazek = Controls.AddButton("Załaduj obrazek",10,110) 
Controls.SetSize(przy_załaduj_obrazek,260,25) 

przy_generuj_kod = Controls.AddButton("Generuj kod na Mruczek Wiki",10,150) 
Controls.SetSize(przy_generuj_kod,260,25) 

Controls.SetTextBoxText(Txt_tab_x,"30") 
Controls.SetTextBoxText(Txt_tab_y,"30") 

Controls.ButtonClicked = ButtonClicked 

Txt_kod = Controls.AddMultiLineTextBox(10,210) 
Controls.SetSize(Txt_kod,260,170) 

GraphicsWindow.FontSize = 13 
GraphicsWindow.DrawBoundText(300,10,290,"Podaj ściężkę do pliku graficznego na komputerze lub bezpośredni adres internetowy do obrazka. Następnie ustaw pozostałe parametry i naciśnij 'Załaduj obrazek'. Jeśli wyświetli się on poprawnie z prawej strony okna programu, naciśnij 'Generuj kod'. Zmiana rozmiaru tabeli wymaga ponownego załadowania obrazka.") 
GraphicsWindow.FontSize = 9 

Sub ButtonClicked 
  
  If Controls.LastClickedButton = przy_załaduj_obrazek Then 
    lok_obrazka = Controls.GetTextBoxText(Txt_lok_obrazka) 
    
    GraphicsWindow.BrushColor = "#66CCFF" 
    GraphicsWindow.FillRectangle(300,10,500,500) 
    GraphicsWindow.BrushColor = "#003399" 
  
  
    tab_x = Controls.GetTextBoxText(Txt_tab_x) 
    tab_y = Controls.GetTextBoxText(Txt_tab_y) 
    
    GraphicsWindow.DrawResizedImage(lok_obrazka,300,10,tab_x,tab_y) 
  EndIf 
  
  If Controls.LastClickedButton = przy_generuj_kod Then 
    
    plik_tymczasowy = File.GetTemporaryFilePath() 

    GraphicsWindow.DrawText(10,190,"Biorę się do pracy...") 
    
    File.AppendContents(plik_tymczasowy,"{|") 
    
    For y = 1 To tab_y 
      
      For x = 1 To tab_x 
        
        piksel = GraphicsWindow.GetPixel(300 + x - 1, 10 + y - 1) 
        
        File.AppendContents(plik_tymczasowy,"| bgcolor=" + piksel + "|") 
        
        EndFor 
        
        File.AppendContents(plik_tymczasowy,"|-") 
        
        GraphicsWindow.BrushColor = "#66CCFF" 
        GraphicsWindow.FillRectangle(10,190,200,30) 
        GraphicsWindow.BrushColor = "#003399" 
        
        GraphicsWindow.DrawText(10,190,"Ukończyłem wiersz: " + y + "/" + tab_y) 
        
     EndFor 
      
    File.AppendContents(plik_tymczasowy,"|}") 
    
    Controls.SetTextBoxText(Txt_kod,File.ReadContents(plik_tymczasowy)) 
    
        GraphicsWindow.BrushColor = "#66CCFF" 
        GraphicsWindow.FillRectangle(10,190,200,30) 
        GraphicsWindow.BrushColor = "#003399" 
  EndIf 
  
  
  
EndSub 

Kreator tabelografiki 0.2

GraphicsWindow.Title = "Kreator Tabelografiki" 

GraphicsWindow.Width = 600 
GraphicsWindow.Height = 400 

GraphicsWindow.BackgroundColor = "#66CCFF" 

GraphicsWindow.BrushColor = "#003399" 

GraphicsWindow.FontSize = 9 

GraphicsWindow.DrawText(10,10,"Lokalizacja pliku graficznego (z dysku lub neta):") 

Txt_lok_obrazka = Controls.AddTextBox(10,25) 
Controls.SetSize(Txt_lok_obrazka,260,20) 

GraphicsWindow.DrawText(10,50,"Rozmiar tabeli w komórkach (szerokość x wysokość):") 
GraphicsWindow.DrawText(90,70,"Sugerowany max: 60") 

Txt_tab_x = Controls.AddTextBox(10,65) 
Controls.SetSize(Txt_tab_x,30,20) 

GraphicsWindow.DrawText(42,70,"x") 

Txt_tab_y = Controls.AddTextBox(50,65) 
Controls.SetSize(Txt_tab_y,30,20) 

przy_załaduj_obrazek = Controls.AddButton("Załaduj podany obrazek",10,90) 
Controls.SetSize(przy_załaduj_obrazek,260,25) 

Przy_zaawansowane_1 = Controls.AddButton("Zaawansowane <",10,120) 
Controls.SetSize(Przy_zaawansowane_1,260,20) 

Przy_zaawansowane_0 = Controls.AddButton("Zaawansowane >",10,120) 
Controls.SetSize(Przy_zaawansowane_0,260,20) 

przy_generuj_kod = Controls.AddButton("Generuj kod na Mruczek Wiki",10,145) 
Controls.SetSize(przy_generuj_kod,260,25) 

Controls.SetTextBoxText(Txt_tab_x,"30") 
Controls.SetTextBoxText(Txt_tab_y,"30") 

Txt_kod = Controls.AddMultiLineTextBox(10,210) 
Controls.SetSize(Txt_kod,260,180) 

GraphicsWindow.FontSize = 13 
GraphicsWindow.DrawBoundText(300,10,290,"Podaj ściężkę do pliku graficznego na komputerze lub bezpośredni adres internetowy do obrazka. Następnie ustaw rozmiary tabeli i naciśnij 'Załaduj obrazek'. Jeśli wyświetli się on poprawnie z prawej strony okna programu, naciśnij 'Generuj kod'. Zmiana rozmiaru tabeli wymaga ponownego załadowania obrazka.") 
GraphicsWindow.FontSize = 9 

'Zaawansowane 
GraphicsWindow.BrushColor = "#33CCFF" 
zaawansowane_tło = Shapes.AddRectangle(300,380) 
Shapes.Move(zaawansowane_tło,290,10) 
Shapes.HideShape(zaawansowane_tło) 

GraphicsWindow.BrushColor = "#003399" 

nap_pocz = Shapes.AddText("Początek tabeli (wymaga na pocz. ''{|''):") 
Shapes.Move(nap_pocz,300,20) 

Txt_pocz = Controls.AddTextBox(300,35) 
Controls.SetSize(Txt_pocz,280,20) 
Controls.SetTextBoxText(Txt_pocz,"{|") 

nap_tytuł = Shapes.AddText("Tytuł tabeli (wymaga na pocz. ''|+'')(opcjonalny):") 
Shapes.Move(nap_tytuł,300,60) 

Txt_tytuł = Controls.AddTextBox(300,75) 
Controls.SetSize(Txt_tytuł,280,20) 

nap_oddzielanie = Shapes.AddText("Oddzielanie wierszy (wymaga na pocz. ''|-''):") 
Shapes.Move(nap_oddzielanie,300,100) 

Txt_oddzielanie = Controls.AddTextBox(300,115) 
Controls.SetSize(Txt_oddzielanie,280,20) 
Controls.SetTextBoxText(Txt_oddzielanie,"|-") 

nap_kom = Shapes.AddText("Kolorowe komórki (domyś. ''| bgcolor='' + kolor + ''|''):") 
Shapes.Move(nap_kom,300,140) 

Txt_przed = Controls.AddTextBox(300,155) 
Controls.SetSize(Txt_przed,280,20) 

nap_kolor = Shapes.AddText("+ kolor +") 
Shapes.Move(nap_kolor,300,174) 

Txt_po = Controls.AddTextBox(300,185) 
Controls.SetSize(Txt_po,280,20) 

Controls.SetTextBoxText(Txt_przed,"| bgcolor=") 
Controls.SetTextBoxText(Txt_po,"|") 

nap_koniec = Shapes.AddText("Koniec tabeli (wymagane - ''|}''):") 
Shapes.Move(nap_koniec,300,210) 

Txt_koniec = Controls.AddTextBox(300,225) 
Controls.SetSize(Txt_koniec,280,20) 
Controls.SetTextBoxText(Txt_koniec,"|}") 

nap_nad = Shapes.AddText("Treść nad tabelą (opcjonalna):") 
Shapes.Move(nap_nad,300,260) 

Txt_nad = Controls.AddTextBox(300,275) 
Controls.SetSize(Txt_nad,280,20) 

nap_pod = Shapes.AddText("Treść pod tabelą (opcjonalna):") 
Shapes.Move(nap_pod,300,300) 

Txt_pod = Controls.AddTextBox(300,315) 
Controls.SetSize(Txt_pod,280,20) 
Controls.SetTextBoxText(Txt_pod,"[[Kategoria:Tabelografiki]]") 

przy_schowaj = Controls.AddButton("Schowaj zaawansowane",300,355) 
Controls.SetSize(przy_schowaj,280,25) 

Controls.HideControl(Txt_pocz) 
Controls.HideControl(Txt_oddzielanie) 
Controls.HideControl(Txt_przed) 
Controls.HideControl(Txt_po) 
Controls.HideControl(Txt_koniec) 
Controls.HideControl(Txt_tytuł) 
Controls.HideControl(txt_nad) 
Controls.HideControl(Txt_pod) 
Controls.HideControl(przy_schowaj) 

Shapes.HideShape(nap_pocz) 
Shapes.HideShape(nap_oddzielanie) 
Shapes.HideShape(nap_kom) 
Shapes.HideShape(nap_kolor) 
Shapes.HideShape(nap_koniec) 
Shapes.HideShape(nap_tytuł) 
Shapes.HideShape(nap_nad) 
Shapes.HideShape(nap_pod) 

Controls.ButtonClicked = ButtonClicked 

'Działania 
Sub ButtonClicked 
  If Controls.LastClickedButton = Przy_zaawansowane_0 Then 
    Shapes.ShowShape(zaawansowane_tło) 
    
    Controls.ShowControl(Txt_pocz) 
    Controls.ShowControl(Txt_oddzielanie) 
    Controls.ShowControl(Txt_przed) 
    Controls.ShowControl(Txt_po) 
    Controls.ShowControl(Txt_koniec) 
    Controls.ShowControl(Txt_tytuł) 
    Controls.ShowControl(txt_nad) 
    Controls.ShowControl(Txt_pod) 
    Controls.ShowControl(przy_schowaj) 

    Shapes.ShowShape(nap_pocz) 
    Shapes.ShowShape(nap_oddzielanie) 
    Shapes.ShowShape(nap_kom) 
    Shapes.ShowShape(nap_kolor) 
    Shapes.ShowShape(nap_koniec) 
    Shapes.ShowShape(nap_tytuł) 
    Shapes.ShowShape(nap_nad) 
    Shapes.ShowShape(nap_pod) 
      
    Controls.HideControl(Przy_zaawansowane_0) 

EndIf 

If Controls.LastClickedButton = Przy_zaawansowane_1 Or Controls.LastClickedButton = przy_schowaj Then 
  Shapes.HideShape(zaawansowane_tło) 
  
  Controls.ShowControl(Przy_zaawansowane_0) 
  
  Controls.HideControl(Txt_pocz) 
  Controls.HideControl(Txt_oddzielanie) 
  Controls.HideControl(Txt_przed) 
  Controls.HideControl(Txt_po) 
  Controls.HideControl(Txt_koniec) 
  Controls.HideControl(Txt_tytuł) 
  Controls.HideControl(txt_nad) 
  Controls.HideControl(Txt_pod) 
  Controls.HideControl(przy_schowaj) 

  Shapes.HideShape(nap_pocz) 
  Shapes.HideShape(nap_oddzielanie) 
  Shapes.HideShape(nap_kom) 
  Shapes.HideShape(nap_kolor) 
  Shapes.HideShape(nap_koniec) 
  Shapes.HideShape(nap_tytuł) 
  Shapes.HideShape(nap_nad) 
  Shapes.HideShape(nap_pod) 
EndIf 

  
  If Controls.LastClickedButton = przy_załaduj_obrazek Then 
    lok_obrazka = Controls.GetTextBoxText(Txt_lok_obrazka) 
    
    GraphicsWindow.BrushColor = "#66CCFF" 
    GraphicsWindow.FillRectangle(300,10,500,500) 
    GraphicsWindow.BrushColor = "#003399" 
  
    tab_x = Controls.GetTextBoxText(Txt_tab_x) 
    tab_y = Controls.GetTextBoxText(Txt_tab_y) 
    
    tab_x = Math.Floor(Math.Abs(tab_x)) 
    tab_y = Math.Floor(Math.Abs(tab_y)) 
    
    If tab_x = 0 Or tab_y = 0 Then 
      GraphicsWindow.ShowMessage("Podano nieprawidłową szerokość lub wysokość tabelki. Popraw te pola a następnie spróbuj ponownie.","Błąd 001") 
    Else 
      GraphicsWindow.DrawResizedImage(lok_obrazka,300,10,tab_x,tab_y) 
      Controls.SetTextBoxText(Txt_tab_x,tab_x) 
      Controls.SetTextBoxText(Txt_tab_y,tab_y) 
    EndIf 
  
    
  EndIf 
  
  If Controls.LastClickedButton = przy_generuj_kod Then 
    
    plik_tymczasowy = File.GetTemporaryFilePath() 

GraphicsWindow.DrawText(10,190,"Biorę się do pracy...") 

nad = Controls.GetTextBoxText(Txt_nad) 

    If nad = "" Or nad = " " Then 
    Else 
      File.AppendContents(plik_tymczasowy,nad) 
    EndIf 

pocz = Controls.GetTextBoxText(Txt_pocz) 
tytuł = Controls.GetTextBoxText(Txt_tytuł) 
    
    File.AppendContents(plik_tymczasowy,pocz) 
    
    If tytuł = "" Or tytuł = " " Then 
    Else 
      File.AppendContents(plik_tymczasowy,tytuł) 
    EndIf 
    
    
    przed = Controls.GetTextBoxText(Txt_przed) 
    po = Controls.GetTextBoxText(Txt_po) 
    
    oddzielanie = Controls.GetTextBoxText(Txt_oddzielanie) 
    
    For y = 1 To tab_y 
      
      For x = 1 To tab_x 
        
        piksel = GraphicsWindow.GetPixel(300 + x - 1, 10 + y - 1) 
        
        File.AppendContents(plik_tymczasowy,przed + piksel + po) 
        
        EndFor 
        
        File.AppendContents(plik_tymczasowy,oddzielanie) 
        
        GraphicsWindow.BrushColor = "#66CCFF" 
        GraphicsWindow.FillRectangle(10,190,200,30) 
        GraphicsWindow.BrushColor = "#003399" 
        
        GraphicsWindow.DrawText(10,190,"Ukończyłem wiersz: " + y + "/" + tab_y) 
        
     EndFor 
      
     koniec = Controls.GetTextBoxText(Txt_koniec) 
      
     File.AppendContents(plik_tymczasowy,koniec) 
      
     pod = Controls.GetTextBoxText(Txt_pod) 
      
    If pod = "" Or pod = " " Then 
    Else 
      File.AppendContents(plik_tymczasowy,pod) 
    EndIf 
    
    Controls.SetTextBoxText(Txt_kod,File.ReadContents(plik_tymczasowy)) 
    
        GraphicsWindow.BrushColor = "#66CCFF" 
        GraphicsWindow.FillRectangle(10,190,200,30) 
        GraphicsWindow.BrushColor = "#003399" 
      
  EndIf 
  
  
  
EndSub