NONAME_1224 Posted July 19, 2019 Posted July 19, 2019 Van egy ilyen kód: guiCreateLabel(1, 1, 100, 100, "elso\tmasodik\nharmadik\tnegyedik", false) --én úgy tudom hogy a \t a tab. Ez nem működik, nem ad ki semmit. hogyan lehetne megcsinálni? Ha így csinálom: elso = "elso" masodik = "masodik" harmadik = "harmadik" negyedik = "negyedik" text = elso..string.rep(" ", 10-utfLen(elso))..masodik text = text.."\n"..harmadik..string.rep(" ", 10-utfLen(harmadik))..negyedik Akkor azért nem jó, mert a szóköz nem egyenlő hosszú karakter az "e"-vel vagy "k"-val vagy igazából bármelyik betűvel! Előre is köszi a segítséget!
NONAME_1224 Posted July 19, 2019 Author Posted July 19, 2019 EDIT: A "\t"-t erről a weboldalról szedtem: https://www.Lua.org/pil/2.4.html A második megoldásnál meg elfelejtettem odaírni, hogy azért nem jó mert nem egyenlő hosszúságú a karakter és ezért szétcsúszik az egész!
JokerPublic Posted July 25, 2019 Posted July 25, 2019 local window = guiCreateWindow(30, 30, 500, 500, "Teszt", false) local tab = guiCreateTabPanel(0, 20, 500, 500, false, window) guiCreateTab( "Teszt1", tab) guiCreateTab( "Teszt2", tab) guiCreateTab( "Teszt3", tab) guiCreateTab( "Teszt4", tab) guiCreateTab( "Teszt5", tab) guiCreateTab( "Teszt6", tab) Szerintem ez kell neked, de ha tévedek nyugodtan írj
NONAME_1224 Posted July 25, 2019 Author Posted July 25, 2019 Ömmm... nem ez kell, hanem az, mintha csak simán mintha tabot nyomsz a billentyűzeten egy szövegszerkesztőben olyan kéne nekem.
JokerPublic Posted July 26, 2019 Posted July 26, 2019 https://forum.multitheftauto.com/topic/75680-tut-Lua-strings/ Elviekben a \v meg a \t-nek kéne lennie erre a megoldásnak gyakorlatban meg nem igazán működnek sem guiban sem pedig dxDrawra local spaces = 10 tab = function(text) local str = "" local start = 0 if text:find("\t") then while true do if text:find("\t", start) then local a = text:find("\t", start) str = str .. text:sub(start, a) .. (" "):rep(spaces) start = a + 1 else str = str .. text:sub(start, #text) break end end else return text end return str end local sx, sy = guiGetScreenSize() addEventHandler("onClientRender", root, function() local text = tab("asd\tasd\ta") dxDrawText(text, 0, 0, sx, sy, tocolor(255,255,255,255), 1, "pricedown", "center", "center") end ) --Ennek elviekben helyetesítenie kéne a \t-t megtudod adni mennyi space-t rakjon 1-1 string közé jah és nem ajánlott renderben használni :D Ha ez sem az amit keresel akkor írj újra xd
NONAME_1224 Posted July 26, 2019 Author Posted July 26, 2019 Igen ez kell, viszont az alap posztban létrehoztam egy ugyan ilyet, de mindegy. Akkor gondolom nem lehet.
NONAME_1224 Posted July 26, 2019 Author Posted July 26, 2019 Ja és azt is leítram, hogy mi a probléma vele.
JokerPublic Posted July 26, 2019 Posted July 26, 2019 (edited) Próbáld meg a funcot amit küldtem annak elviekben nem kéne ilyen gondja lennie Edited July 26, 2019 by JokerPublic Elírtam
NONAME_1224 Posted July 26, 2019 Author Posted July 26, 2019 De azzal az a baj, hogy egy szóköz nem egyenlő hosszúságú egy mondjuk "O" betűvel, így ha több soros kiírást akarok így akkor elcsúszik az első sor a másodikhoz. Amit te leírtál ugyan az, amit én csináltam, csak hosszabb...
JokerPublic Posted July 27, 2019 Posted July 27, 2019 Ne legyél már makacs próbáld meg azt a funcot amit küldtem és hiába hiszed azt, hogy ugyanaz csak hosszabb csak a céljában hasonlít a tiédhez.
NONAME_1224 Posted July 29, 2019 Author Posted July 29, 2019 Ömm... Igen. Ugyan az a probléma, ha több sor van pl.:2 akkor elcsúszik az első a másodikhoz képest, mivel ha a két sorban nem ugyan az van írva akkor más hosszúságú lesz. Mert egy szóköz hossza inkább egy "i" betűre hasonlít, mint egy "O"-ra.
NONAME_1224 Posted August 1, 2019 Author Posted August 1, 2019 Most nem tudok képet küldeni, de ha \n-t használsz eltöröd a sort és minkét sorban használsz legalább két tabot akkor magad is meglátod. Tehát a kód: local text = tab("asd\tqwe\nppop\tkasléd") Ami a te kódodban a 27. sor.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now