Szerző Téma: EditBox és addAccount  (Megtekintve 1419 alkalommal)

EditBox és addAccount
« Dátum: 2017. Március 22. - 16:09:29 »
0
Sziasztok. Elkezdtem egy ALAP login panelt csinálni, viszont van 3 problémám, amire nem találtam még megoldást. Ebben a 3 probléma megoldásában kérném segítségeteket.
 
 
 
1: Editbox hátterének, illetve editbox text színének módosítása. Ezt sajnos nem tudom megoldani, nem találtam rá megoldást, hogy hogyan lehetne. 
 
2: Ha kikattinto az editboxból, pl.: a képre, akkor elsötétül, és nem lehet rá visszakattintani.
 
3: Account hozzáadása. Sajnos mivel client oldaliban vagyok, nem nagyon tudom, hogyan lehetne megoldani, hogyha valaki a reigzstrációra kattint, akkor megcsinálja az accountját addAccount(username, password)-al. 
 
 
 
Ezeket nem tudom. Segítségeteket előre is köszönöm. További szép napot! :) 
 


local sx, sy = guiGetScreenSize()
function login()
    wx, wy = 500, 500
    x = (sx/2) - (wx/2)
    y = (sy/2) - (wy/2)
    guiCreateStaticImage(x,y,500,500,\"login.png\", false) -- Kép előhozása
    local feledit = guiCreateEdit( 0.40, 0.46, 0.23, 0.037, \"Felhasználónév\", true) --Felh. írás mező
    guiEditSetMaxLength ( feledit, 20 ) --Írás lehetőség felhasználónév
    local jeledit = guiCreateEdit( 0.40, 0.565, 0.23, 0.037, \"Jelszó\", true ) -- Jelszó írás mező
    guiEditSetMaxLength ( jeledit, 20 ) --Írás lehetőség jelszó
    guiEditSetMasked ( jeledit, true ) --Jelszó \"maszkolás\"
    showCursor(true) -- Cursos előhozás
    showPlayerHudComponent(\"all\", false)    -- hudok kikapcsolása
    showChat(false) -- Chat kikapcsolása
    if (isElement(zene)) then --Ha a zene be van kapcsolva
        destroyElement(zene) -- Akkor kapcsolja ki
    end -- Ha nincs
    zene = playSound(\"music.mp3\", true) -- Akkor játsza le
    setBlurLevel (255)-- Blur szint
    setCameraMatrix(2457.73145, -1666.30969, 24.23867, 5568.388671875, -1218.42474365234, 69.881813049316) -- Kamera nézése
    bindKey ( \"F4\", \"both\", funcInput ) -- F4 kiakpcsolás
    addEventHandler(\"onClientRender\", root, gombok) -- Gombok elindítása
    addEventHandler(\"onClientClick\", getRootElement(), gomb) --Gomb hozzáadása
    addEventHandler(\"onClientClick\", getRootElement(), regisztralas) --Gomb hozzáadása
end
addEventHandler(\"onClientResourceStart\", getRootElement(), login)
function gombok()
    dxDrawRectangle ( sx/2.77, sy/1.6, sx/8, sy/20, tocolor ( 0, 0, 0, 200 ) ) -- Bejelentkezés
    dxDrawRectangle ( sx/1.97, sy/1.6, sx/8, sy/20, tocolor ( 0, 0, 0, 200 ) ) -- Regisztráció
    dxDrawText ( \"Bejelentkezés\", sx/2.64, sy/1.58, sx, sy, tocolor ( 255, 255, 255, 255 ), 1.5, \"default-bold\" )    -- Bejelentkezés gomb
    dxDrawText ( \"Regisztráció\", sx/1.9, sy/1.58, sx, sy, tocolor ( 255, 255, 255, 255 ), 1.5, \"default-bold\" ) -- Bejelentkezés gomb
end
function funcInput ( key, keyState )
  if ( keyState == \"down\" ) then
    destroyElement(zene)
  end
end
function gomb(button, state, absoluteX, absoluteY, worldX, worldY, worldZ, clickedElement)
    local felh = guiGetText ( feledit ) --Felh. lekérése
    local jelszo = guiGetText ( jeledit ) --pass. lekérése
    if (state == \"down\") then
        -- bal, jobb, felső, alsó (a képernyő bal felső sarkától számítva)
        if (absoluteX >= sx/2.77) and (absoluteX <= (sx/2.77)+(sx/8)) and (absoluteY >= sy/1.6) and (absoluteY <= (sy/1.6)+(sy/20)) then -- ha a kirajzolt dx elem határain belül van a kurzor
            outputChatBox(\"Sikeres bejelentkezés!\")
        end
    end
    if (state == \"down\") then
        -- bal, jobb, felső, alsó (a képernyő bal felső sarkától számítva)
        if (absoluteX >= sx/1.97) and (absoluteX <= (sx/1.97)+(sx/8)) and (absoluteY >= sy/1.6) and (absoluteY <= (sy/1.6)+(sy/20)) then -- ha a kirajzolt dx elem határain belül van a kurzor
            outPutChatBox(\"Sikeres regisztráció!\")
        end
    end
end

EditBox és addAccount
« Válasz #1 Dátum: 2017. Március 22. - 16:39:06 »
0
A kliensről való szerver triggerelés az a triggerServerEventel lehet, az editBoxnak leveszed az alpha-ját 0-ra raksz rá egy rectangle-t majd dx textet raksz a rectanglere, kikéred egy változóba az editbox szövegét és azt bele a dx text-be. Az elsőtétülést azt nem nagyon tudom értelmezni.

EditBox és addAccount
« Válasz #2 Dátum: 2017. Március 22. - 18:04:29 »
0
Szia. Segítségedet köszönöm. Valószínű én vagyok most a kiba.....ott béna. Megcsináltam, de nem jó.
 
 
 
 

function gombok()
    dxDrawRectangle ( sx/2.77, sy/1.6, sx/8, sy/20, tocolor ( 0, 0, 0, 200 ) ) -- Bejelentkezés
    dxDrawRectangle ( sx/1.97, sy/1.6, sx/8, sy/20, tocolor ( 0, 0, 0, 200 ) ) -- Regisztráció
    dxDrawText ( \"Bejelentkezés\", sx/2.64, sy/1.58, sx, sy, tocolor ( 255, 255, 255, 255 ), 1.5, \"default-bold\" )    -- Bejelentkezés gomb
    dxDrawText ( \"Regisztráció\", sx/1.9, sy/1.58, sx, sy, tocolor ( 255, 255, 255, 255 ), 1.5, \"default-bold\" ) -- Bejelentkezés gomb
    dxDrawText (, sx/2.45, sy/2.15, sx, sy, tocolor ( 255, 255, 255, 255 ), 1.4, \"default-bold\" ) --Feledit szöveg
end
function login()
    wx, wy = 500, 500
    x = (sx/2) - (wx/2)
    y = (sy/2) - (wy/2)
    guiCreateStaticImage(x,y,500,500,\"login.png\", false) -- Kép előhozása
    feledit = guiCreateEdit( 0.40, 0.46, 0.23, 0.037, \"Felhasználónév\", true) --Felh. írás mező
    local feledittext = guiGetText (feledit)
    guiEditSetMaxLength ( feledit, 20 ) --Írás lehetőség felhasználónév
    guiSetAlpha(feledit, 0) --Feledit elhalványítása
    local jeledit = guiCreateEdit( 0.40, 0.565, 0.23, 0.037, \"Jelszó\", true ) -- Jelszó írás mező
    guiEditSetMaxLength ( jeledit, 20 ) --Írás lehetőség jelszó
    guiEditSetMasked ( jeledit, true ) --Jelszó \"maszkolás\"
    showCursor(true) -- Cursos előhozás
    showPlayerHudComponent(\"all\", false)    -- hudok kikapcsolása
    showChat(false) -- Chat kikapcsolása
    if (isElement(zene)) then --Ha a zene be van kapcsolva
        destroyElement(zene) -- Akkor kapcsolja ki
    end -- Ha nincs
    --zene = playSound(\"music.mp3\", true) -- Akkor játsza le
    setBlurLevel (255)-- Blur szint
    setCameraMatrix(2457.73145, -1666.30969, 24.23867, 5568.388671875, -1218.42474365234, 69.881813049316) -- Kamera nézése
    bindKey ( \"F4\", \"both\", funcInput ) -- F4 kiakpcsolás
    addEventHandler(\"onClientRender\", root, gombok) -- Gombok elindítása
    addEventHandler(\"onClientClick\", getRootElement(), gomb) --Gomb hozzáadása
end
addEventHandler(\"onClientResourceStart\", getRootElement(), login)
« Utoljára szerkesztve: 2017. Március 22. - 18:05:16 írta xerox0224 »

EditBox és addAccount
« Válasz #3 Dátum: 2017. Március 22. - 18:13:49 »
0
Szia! Nem adtál meg szöveget a dxText-ben.

EditBox és addAccount
« Válasz #4 Dátum: 2017. Március 22. - 18:26:01 »
0
dxDrawText (feledittext, sx/2.45, sy/2.15, sx, sy, tocolor ( 255, 255, 255, 255 ), 1.4, \"default-bold\" )
 
 
 
UI: Vedd le a \"feledittext\" változódról a local-t.

EditBox és addAccount
« Válasz #5 Dátum: 2017. Március 22. - 18:44:26 »
0
Megcsináltam. Mostmár kiírja azt, ami az editbox-ban az alap szöveg, a felhasználónév, viszont bármit beleírok, nem reagál semmire se, nem tudom kitörölni a \"felhasználónév\" nevű alap editbox szöveget se. 
 


local sx, sy = guiGetScreenSize()
function login()
    wx, wy = 500, 500
    x = (sx/2) - (wx/2)
    y = (sy/2) - (wy/2)
    guiCreateStaticImage(x,y,500,500,\"login.png\", false) -- Kép előhozása
    feledit = guiCreateEdit( 0.40, 0.46, 0.23, 0.037, \"Felhasználónév\", true) --Felh. írás mező
    feledittext = guiGetText (feledit)
    guiEditSetMaxLength ( feledit, 20 ) --Írás lehetőség felhasználónév
    guiSetAlpha(feledit, 0) --Feledit elhalványítása
    local jeledit = guiCreateEdit( 0.40, 0.565, 0.23, 0.037, \"Jelszó\", true ) -- Jelszó írás mező
    guiEditSetMaxLength ( jeledit, 20 ) --Írás lehetőség jelszó
    guiEditSetMasked ( jeledit, true ) --Jelszó \"maszkolás\"
    showCursor(true) -- Cursos előhozás
    showPlayerHudComponent(\"all\", false)    -- hudok kikapcsolása
    showChat(false) -- Chat kikapcsolása
    if (isElement(zene)) then --Ha a zene be van kapcsolva
        destroyElement(zene) -- Akkor kapcsolja ki
    end -- Ha nincs
    --zene = playSound(\"music.mp3\", true) -- Akkor játsza le
    setBlurLevel (255)-- Blur szint
    setCameraMatrix(2457.73145, -1666.30969, 24.23867, 5568.388671875, -1218.42474365234, 69.881813049316) -- Kamera nézése
    bindKey ( \"F4\", \"both\", funcInput ) -- F4 kiakpcsolás
    addEventHandler(\"onClientRender\", root, gombok) -- Gombok elindítása
    addEventHandler(\"onClientClick\", getRootElement(), gomb) --Gomb hozzáadása
end
addEventHandler(\"onClientResourceStart\", getRootElement(), login)
function gombok()
    dxDrawRectangle ( sx/2.77, sy/1.6, sx/8, sy/20, tocolor ( 0, 0, 0, 200 ) ) -- Bejelentkezés
    dxDrawRectangle ( sx/1.97, sy/1.6, sx/8, sy/20, tocolor ( 0, 0, 0, 200 ) ) -- Regisztráció
    dxDrawText ( \"Bejelentkezés\", sx/2.64, sy/1.58, sx, sy, tocolor ( 255, 255, 255, 255 ), 1.5, \"default-bold\" )    -- Bejelentkezés gomb
    dxDrawText ( \"Regisztráció\", sx/1.9, sy/1.58, sx, sy, tocolor ( 255, 255, 255, 255 ), 1.5, \"default-bold\" ) -- Bejelentkezés gomb
    dxDrawText (feledittext, sx/2.45, sy/2.15, sx, sy, tocolor ( 255, 255, 255, 255 ), 1.4, \"default-bold\" ) --Feledit szöveg
end

EditBox és addAccount
« Válasz #6 Dátum: 2017. Március 22. - 18:58:56 »
0
Próbáld local-lal berakni az onClientRender-be a feledittext változót.
« Utoljára szerkesztve: 2017. Március 22. - 18:59:45 írta BlackSy »

EditBox és addAccount
« Válasz #7 Dátum: 2017. Március 22. - 19:02:51 »
0
Anélkül inkább mert akkor ellehet érni más function-ből.

Nem elérhető id100

  • 903
    • Profil megtekintése
EditBox és addAccount
« Válasz #8 Dátum: 2017. Március 22. - 19:31:50 »
0
thegergo02
 
Ha máshol NEM AKARJA elérni, akkor nem kell globálissá tenni, teljesen fölösleges dolog :)
 
/tudtommal kevésbé biztonságos, lassabb bár ezekben nem vagyok biztos, csak olvastam/

EditBox és addAccount
« Válasz #9 Dátum: 2017. Március 22. - 19:46:27 »
+1
WOOW! Köszönöm, működött minden, istenek vagytok :D . Köszönöm szépen mindenkinek aki segített, hatalmas pacsi ;) . További szép estét mindenkinek! 
 
 

EditBox és addAccount
« Válasz #10 Dátum: 2017. Március 23. - 15:35:10 »
0
Bocsánat, de lenne még egy problémám, aztán már nem lesz több :D :D . Hogyan lehetne azt megoldani, hogy amikor írok, a 5. betűnél villog a kis írás csík, de már 12 karaktert írtam be. Hogyan lehetne azt megcsinálni, hogy rendesen kövesse a kis csík amit írok. ( nem akarok a betűt kicsiníteni, mert akkor már túl kicsi lenne. ( kép: KATTINTS IDE . A képen jelenleg az utolsó s betű előtt villog az a kis egyenes, ami mutatja, hogy hol jársz az írása. Tudom, nehéz értelmezni :D )

EditBox és addAccount
« Válasz #11 Dátum: 2017. Március 23. - 18:02:12 »
0
Az azért van, mert az editbox-ban más betűtípus van, kissebb a mérete, és annak a szövegnek követi a kurzor a helyét. Ha betűtípust cserélsz az editbox-ban, jó lesz. :)

EditBox és addAccount
« Válasz #12 Dátum: 2017. Március 24. - 15:32:26 »
0
Sajnos eléggé nokedli vagyok ebben. Kerestem mta wikin, de nem találtam betűtípus megváltoztatást editboxon belüle, csak ezeket :
 

EditBox és addAccount
« Válasz #13 Dátum: 2017. Március 24. - 15:44:32 »
0

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal