[Вопрос] Чат - Форум Cheat-Master.ru
  • Страница 1 из 1
  • 1
Модератор форума: Sanoxxx, Alowir, Phoenixxx_Czar  
[Вопрос] Чат
[CM]James17 Дата: Воскресенье, 10.06.2018, 15:40 | Сообщение # 1
Новичок
Сообщений: 22
Статус: Offline
Добрый день. Вы не раз видели, как работает любой чат: новые смс появляются снизу старых, без каких-либо видимых обновлений чата. Приведу пример:
Код
#SingleInstance Force
#Include SAMP.ahk
Gui, Color, FFFFFF
Gui, Font, S15 CDefault, Arial
Gui, Add, Edit, x-2 y-3 w750 h440 ReadOnly vGUIChat,
Gui, Font, S18 CDefault, Arial
Gui, Add, Edit, x6 y470 w580 h30 vGoText,
Gui, Add, Button, x596 y447 w130 h40 gSendMessagetoChat, Отправить
Gui, Add, Button, x596 y497 w130 h40 gGUIChatClear, Очистить
Gui, Show, w748 h545, ChatHelper
GuiControl, Focus, GoText
ChatLog = %A_MyDocuments%\GTA San Andreas User Files\SAMP\chatlog.txt
SetTimer, ChatRefresh, ON
return

SendMessagetoChat:
Gui, Submit, NoHide
if GoText =
{
    return
}
SendChat(GoText)
GuiControl, Text, GoText,
return

ChatRefresh:
FileRead, chat, %ChatLog%
GuiControl, Text, GUIChat, %chat%
ControlSend, Edit1, ^{End}, SAMPChatHelper
sleep 1000
return

GUIChatClear:
FileDelete, %ChatLog%
sleep 100
FileAppend,, %Chatlog%
return

GuiClose:
ExitApp

Это простейший пример, чтобы понять, о чем я говорю. Если мы будем таким образом обновлять чат, то придется постоянно листать его вручную вниз, но даже с ControlSend это выглядит просто ужасно. Есть ли какие-либо иные способы обновления чата? Я надеюсь, что доступно объяснил, что мне требуется узнать. Благодарю.


Сообщение отредактировал [CM]James17 - Воскресенье, 10.06.2018, 15:54
CZAR Дата: Воскресенье, 10.06.2018, 23:01 | Сообщение # 2
Czar Of Scripts
Сообщений: 1373
Статус: Offline
Можешь попробовать сделать инверсию всех сообщений, новые вверху, старые внизу и тогда не прийдется так мучаться.




Я в ВК
Ушел в веб.

• Ничего не покупаю.
• Способы не проверяю.


У меня теперь новый домен, если ссылка не работает - напишите.

Гарант Cheat-Master:
*тема*

AHK
[S-RP] House Finder / House Teleporter
[SAMP] Online Counter
[S-RP] [For Event] Show Star
[S-RP] AntiCasino
[S-RP] [BOT] Auto Fisher + Auto Find Worm + Auto Cook
[S-RP] [BOT] /dance
Winner | Делаем розыгрыши среди участников темы.
SAMP-UDF
[AHK Урок] Выбор в диалогах мышкой и enter`ом
[SAMP] Быстрый ответ на СМС
[ERP] Помощник для адвоката
[DRP] FakeTime

Достижения:
- 26.02.2017
- 03.01.2018
- 26.05.2018
- 22.09.2018
- 04.04.2019
[CM]James17 Дата: Вторник, 12.06.2018, 12:53 | Сообщение # 3
Новичок
Сообщений: 22
Статус: Offline
Цитата Phoenixxx_Czar ()
Можешь попробовать сделать инверсию всех сообщений, новые вверху, старые внизу и тогда не прийдется так мучаться.

Да, тоже была такая мысль. Можно будет хотя бы следить за новыми сообщениями чата. Но опять же, возможно листать чат утеряна. Придется теперь постоянно следить исключительно за новыми сообщениями.
Dworkin Дата: Вторник, 12.06.2018, 22:18 | Сообщение # 4
Боец
Сообщений: 110
Статус: Offline
Поищи исходники чатов
[CM]James17 Дата: Среда, 13.06.2018, 14:50 | Сообщение # 5
Новичок
Сообщений: 22
Статус: Offline
Цитата Dworkin ()
Поищи исходники чатов

Все, что связано с SAMP`ом - внутриигровые чаты, там ничего примечательного нет, насчет обновления последних сообщений париться не надо. А вот такие, обычные чаты, я не находил.

Цитата Phoenixxx_Czar ()
Можешь попробовать сделать инверсию всех сообщений, новые вверху, старые внизу и тогда не прийдется так мучаться.

Сделал инверсию, все работает замечательно. Спасибо за идею. Работает так:
1. Читаем chatlog.txt
2. Создаем файл с инверсией этих строк.
3. Проверяем первую строчку нашего файла с последней строчкой chatlog.txt, если они не совпадают, то в самое начало нашего файла добавляем эту самую последнюю строчку, которая не совпала.
*GUI интерфейс отображает содержимое нашего файла.

Но, если уж придраться, то к тому, что теперь нельзя листать сообщения вниз долго, иначе как только обновится GUI, то снова будет все показываться сверху. В любом случае, это всяко лучше того, что было до этого.


Сообщение отредактировал [CM]James17 - Среда, 13.06.2018, 14:57
CZAR Дата: Среда, 13.06.2018, 16:11 | Сообщение # 6
Czar Of Scripts
Сообщений: 1373
Статус: Offline
[CM]James17, сделай checkbox, мол "Обновлять чат лог?", этим самым ты можешь запретить обновлять список и пролистать куда нужно и обратно включить.




Я в ВК
Ушел в веб.

• Ничего не покупаю.
• Способы не проверяю.


У меня теперь новый домен, если ссылка не работает - напишите.

Гарант Cheat-Master:
*тема*

AHK
[S-RP] House Finder / House Teleporter
[SAMP] Online Counter
[S-RP] [For Event] Show Star
[S-RP] AntiCasino
[S-RP] [BOT] Auto Fisher + Auto Find Worm + Auto Cook
[S-RP] [BOT] /dance
Winner | Делаем розыгрыши среди участников темы.
SAMP-UDF
[AHK Урок] Выбор в диалогах мышкой и enter`ом
[SAMP] Быстрый ответ на СМС
[ERP] Помощник для адвоката
[DRP] FakeTime

Достижения:
- 26.02.2017
- 03.01.2018
- 26.05.2018
- 22.09.2018
- 04.04.2019
[CM]James17 Дата: Среда, 13.06.2018, 17:52 | Сообщение # 7
Новичок
Сообщений: 22
Статус: Offline
Phoenixxx_Czar, прекрасно. На моменте, где GuiControl, просто стоит добавить проверку на Checkbox, чтобы сам файл с чатом продолжал обновляться, но просто не отображался в GUI-интерфейсе. Спасибо, это отличная идея.
  • Страница 1 из 1
  • 1
Поиск:
Статистика Форума
Лучшие пользователи
Admin [39113]

GеNius [7210]

[CM]Russel [5557]

kenlo763 [4952]

[CM]AGRESSOR [4639]

Snake_Firm [4452]

Сэс [4416]

Artem_Buero [4223]

[CM]Durman [3204]

[CM]Рафаэль [3080]

iMaddy [2855]

sky_Woker [2854]

getrekt [2745]

Новые пользователи