Проблема с ImGui.InputText

Loverxzc

Новичок
Автор темы
18
7
Версия MoonLoader
Другое
При нажатии на поле ввода у меня на секунду появляется 'I' вот эта хуня при вводе и пропадает.
При попытке быстро проклацать что то пишется еле еле ловя одна буква, так же пишется эта же буква в соседних полях
Что делать?

Lua:
require('lib.moonloader')

local imgui = require('imgui')
local sampev = require('lib.samp.events')

local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8

local main_window_state = imgui.ImBool(false)



function main()
    repeat wait(0) until isSampAvailable()
    sampRegisterChatCommand('dhelp', dhelp)
    mytag = imgui.ImBuffer(256)
    theytag = imgui.ImBuffer(256)
    text = imgui.ImBuffer(256)
    while true do
        wait(0)
        imgui.Process = main_window_state.v
        imgui.LockPlayer = main_window_state.v
    end
end


function imgui.OnDrawFrame()
    local posX, posY = getScreenResolution()
    if main_window_state.v then
        imgui.SetNextWindowPos(imgui.ImVec2(posX / 2, posY / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
        imgui.SetNextWindowSize(imgui.ImVec2(350, 210), imgui.Cond.FirstUseEver)
        imgui.Begin(u8'Хелпер Департамента', main_window_state)
        imgui.Text(u8"Ваш тег")
        imgui.InputText(u8'', mytag)
        imgui.Text(u8"Тег обращения")
        imgui.InputText(u8'', theytag)
        imgui.Text(u8'Что отправить?')
        imgui.InputText(u8'', text)
        if imgui.Button(u8'Отправить') then
            sampSendChat('/do' .. ' [' .. u8:decode(mytag.v) .. '] ' .. '-' .. ' [' .. u8:decode(theytag.v) .. '] ' .. u8:decode(text.v))
        end
        if imgui.Button(u8'Отправить в закрытый канал') then
            sampSendChat('/do' .. ' [' .. u8:decode(mytag.v) .. '] ' .. 'з.к.' .. ' [' .. u8:decode(theytag.v) .. '] ' .. u8:decode(text.v))
        end
        imgui.End()
    end
end


function dhelp()
    main_window_state.v = not main_window_state.v
end


function sampev.onSendCommand(command)
    if command == '/d' then
        main_window_state.v = not main_window_state.v
        sampAddChatMessage('{0000FF}[Хелпер департамента]: {FFFFFF}Писать без квадратных скобок!', -1)
        return false
    end
end
 
Последнее редактирование:
Решение
чисто учусь писать, это первый скрипт на imgui


только у моего скрипта такая проблема
Потому что только ты не видишь решение у себя под носом:
Она пишется в соседних полях, потому что у тебя для всех полей один буфер.
А работает только одно поле из-за того, что у них всех одинаковые названия u8''

Сделай этим полям разные названия, ахуеешь

Hinаta

Известный
783
358
так же пишется эта же буква в соседних полях
Она пишется в соседних полях, потому что у тебя для всех полей один буфер.
А работает только одно поле из-за того, что у них всех одинаковые названия u8''

Я, кстати, считаю фатальной ошибкой использовать imgui в 2023 году
 

Loverxzc

Новичок
Автор темы
18
7
Я, кстати, считаю фатальной ошибкой использовать imgui в 2023 году
чисто учусь писать, это первый скрипт на imgui

Она пишется в соседних полях, потому что у тебя для всех полей один буфер.
А работает только одно поле из-за того, что у них всех одинаковые названия u8''
В других скриптах написано примерно так же как у меня, но только у моего скрипта такая проблема
 

Hinаta

Известный
783
358
чисто учусь писать, это первый скрипт на imgui


только у моего скрипта такая проблема
Потому что только ты не видишь решение у себя под носом:
Она пишется в соседних полях, потому что у тебя для всех полей один буфер.
А работает только одно поле из-за того, что у них всех одинаковые названия u8''

Сделай этим полям разные названия, ахуеешь
 
  • Нравится
Реакции: Loverxzc