Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2020-09-12, 20:56


killercycDDS

Migacz






Wiek: 25
Na forum: 4512 dni
Posty: 629
Nick w MP: killer_cyc[DDS]

Piwa: 1659

Respekt: 22

Witam ucz? si? robi? odczyt z bazy mysql do gui i natkn??em si? na kilka problem?w
1. Czemu gdy zrobi? za pomoc? binda to po pierwszym klikni?ciu nic nie wyskakuje a po ponownym gdy powinno zamkn?? nagle warto?? z mysql si? pojawiaj? ale po jakim? czasie powoduje straszne spadki fps?w


1.1 Jak zrobi? by nie dublowa?o wynik?w
2. Pr?bowa?em zrobi? te? na marker lecz gdy wejd? w marker nic nie wyst?powa?o

Strona C


gui_sell false
function gui_sellxd()
    okno_sell guiCreateWindow(541330848502"Panel sprzeda?y pojazd?w"false)
    guiWindowSetSizable(okno_sellfalse)


    lista guiCreateGridList(549362830335false)
    guiGridListAddColumn(lista"ID"0.3)
    guiGridListAddColumn(lista"Pojazd"0.3)
    guiGridListAddColumn(lista"Przebieg"0.3) 
    triggerServerEvent("test2",resourceRoot,localPlayer)
end

function xdde(result)
    --guiGridListClear(lista)
    for i,v in pairs(result) do  
        local row=guiGridListAddRow(lista)
        guiGridListSetItemText(lista,row,1,v["id"], falsefalse)
        guiGridListSetItemText(lista,row,2getVehicleNameFromModel(v["model"]), falsefalse)
        guiGridListSetItemText(lista,row,3math.floor(v["mileage"]).. " KM"falsefalse)
        end
    end
addEvent("test"true)
addEventHandler("test"resourceRootxdde)

bindKey("F6""down", function()
    if gui_sell == true then
        gui_sell false
        showCursor(false)
        removeEventHandler("onClientRender"rootgui_sellxd)
    else
        gui_sell true
        showCursor(true)
        addEventHandler("onClientRender"rootgui_sellxd)
    end
end)

--[[local xd createMarker(-1925.44249.9641.05-1,"cylinder",1,255,215,0)

addEventHandler("onClientMarkerHit"xd, function(el,md)
    if el~=localPlayer then return end
    if getPedOccupiedVehicle(elthen return end
        showCursor(true)
        addEventHandler("onClientRender"rootgui_sellxd)
        setElementData(el"marker:sell"true)
end)--]]





Strona S


addEvent("test2"true)
addEventHandler("test2"resourceRoot,function(el)
    local resulted=exports["pystories-db"]:dbGet("SELECT * FROM pystories_vehicles WHERE ownedPlayer=?",getElementData(el,"player:sid"))
    triggerClientEvent(el,"test",resourceRoot,resulted)
end)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-09-12, 22:53


Maniekxx

Amator






Wiek: 24
Na forum: 2894 dni
Posty: 232
Nick w MP: Maniekxx

Piwa: 225

Respekt: 110
Respekt: 110

Ostrzeżeń: 20%
1. Zamiast zmiennej 'gui_sell', sprawdzaj czy okno jest otwarte, czy zamkni?te za pomoc? funkcji
guiGetVisible()


if guiGetVisible(okno_sell) == false then
-- otwierasz okno
else
-- zamykasz okno
end


2. Staraj si? nazywa? funkcj? kt?re piszesz w miar? normalny spos?b, umo?liwi to ?atwiejsze odczytanie kodu.

3. Spadki FPS s? spowodowane zapewne wy?wietlaniem okna za pomoc? eventu 'onClientRender', u?yj do tego funkcji 'guiSetVisible()'.

4. Aby wyniki z bazy danych pobra?y si? za pierwszym razem po otwarciu okna, wysy?aj event 'test2' gdy gracz naci?nie klawisz 'f6'.

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
killercycDDS
Wysłany: 2020-09-13, 00:25


killercycDDS

Migacz






Wiek: 25
Na forum: 4512 dni
Posty: 629
Nick w MP: killer_cyc[DDS]

Piwa: 1659

Respekt: 22

"Maniekxx" napisał/a:

1. Zamiast zmiennej 'gui_sell', sprawdzaj czy okno jest otwarte, czy zamkni?te za pomoc? funkcji
guiGetVisible()


if guiGetVisible(okno_sell) == false then
-- otwierasz okno
else
-- zamykasz okno
end



2. Staraj si? nazywa? funkcj? kt?re piszesz w miar? normalny spos?b, umo?liwi to ?atwiejsze odczytanie kodu.

3. Spadki FPS s? spowodowane zapewne wy?wietlaniem okna za pomoc? eventu 'onClientRender', u?yj do tego funkcji 'guiSetVisible()'.

4. Aby wyniki z bazy danych pobra?y si? za pierwszym razem po otwarciu okna, wysy?aj event 'test2' gdy gracz naci?nie klawisz 'f6'.


ok zrobi?em to za pomoc? guiSetVisible i dzia?a dzi?ki i nie laguje. Co do nazewnictwa robi? to dla test?w wi?c wymy?lone s?. Kolejne pytanie takie jak unikn?? czego? takiego jak kto? naci?nie na g?rny pasek?


Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-09-13, 00:59


Wilq







Wiek: 24
Na forum: 4428 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Wydaje mi si?, ?e w evencie

Więcej informacji znajdziesz w Wikipedii MTA:

onClientGUIClick

sprawdzasz czy source to gui_sell, je?li tak to

Więcej informacji znajdziesz w Wikipedii MTA:

cancelEvent


Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-09-13, 01:42


killercycDDS

Migacz






Wiek: 25
Na forum: 4512 dni
Posty: 629
Nick w MP: killer_cyc[DDS]

Piwa: 1659

Respekt: 22

Wilq, obecny kod wygl?da tak


local wm ={}
wm.okno_sell guiCreateWindow(541330848502"Panel sprzeda?y pojazd?w"false)
    guiWindowSetSizable(wm.okno_sellfalse)
    guiSetVisible(wm.okno_sellfalse)
    guiWindowSetMovable(wm.okno_sellfalse)
    wm.lista guiCreateGridList(549362830335false)
    guiGridListAddColumn(wm.lista"ID"0.3)
    guiGridListAddColumn(wm.lista"Pojazd"0.3)
    guiGridListAddColumn(wm.lista"Przebieg"0.3) 
    guiSetVisible(wm.listafalse)

function xdde(result)
    guiGridListClear(wm.lista)
    for i,v in pairs(result) do  
        local row=guiGridListAddRow(wm.lista)
        guiGridListSetItemText(wm.lista,row,1,v["id"], falsefalse)
        guiGridListSetItemText(wm.lista,row,2getVehicleNameFromModel(v["model"]), falsefalse)
        guiGridListSetItemText(wm.lista,row,3math.floor(v["mileage"]).. " KM"falsefalse)
        end
    end
addEvent("test"true)
addEventHandler("test"resourceRootxdde)

bindKey("F6""down", function()
    if guiGetVisible(wm.okno_sell) == true then
       showCursor(false)
       guiSetVisible(wm.okno_sell,false)
       guiSetVisible(wm.lista,false)
        
    else
        guiSetVisible(wm.okno_sell,true)
        guiSetVisible(wm.lista,true)
        showCursor(true)
        triggerServerEvent("test2",resourceRoot,localPlayer)
    end
end)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-09-13, 08:44


Wilq







Wiek: 24
Na forum: 4428 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Ustaw parent gridlisty na to okno. To chyba 6 albo 7 argument.


Więcej informacji znajdziesz w Wikipedii MTA:

guiCreateGridList


Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
killercycDDS
Wysłany: 2020-09-13, 11:58


killercycDDS

Migacz






Wiek: 25
Na forum: 4512 dni
Posty: 629
Nick w MP: killer_cyc[DDS]

Piwa: 1659

Respekt: 22

Dzi?ki za pomoc do zamkni?cia

Postaw piwo autorowi tego posta
 

 
Tagi: gui
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » gui Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku