Użytkownik:Kenex/kody

Z MruczekWiki

Kreator tabelografiki

Jak korzystać?

To są kody programu Kreator Tabelografiki. Aby z nich korzystać, należy je wkleić do programu Microsoft Small Basic i je uruchomić. Polecam zjechać niżej po nowszą wersję.

Kreator tabelografiki 0.1

Kod:


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

Kod:


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,"")

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