Что нового

2 и более параметра в одной строке таблицы

nicodemus

Новичок
Сообщения
2
Репутация
0
Здравствуйте. Как сделать что бы при выборе сайта из списка, и при нажатие кнопки Запуск игры - она запускалась, а при нажатие кнопки Регистрация переходило на сайт. Точнее осталось только повесить на эту же ссылку путь к исполняемому файлу, и что бы его там не было видно.

Код:
#Include <GUIConstants.au3>
#include <ListBoxConstants.au3>

Launcher()

Func Launcher()

$settings = "test.ini"
$Site1 = IniRead($settings, "Site", "Site1", "")
$Program1 = IniRead($settings, "Program", "Program1", "")

GUICreate('Launcher', 350, 640, -1, -1, 0, 0)
GUICtrlCreatePic(@ScriptDir & '\test.jpg', 0, 0, 345, 640)
GUICtrlSetState(-1, $GUI_DISABLE)
GUISetState()
 $Mylist = GUICtrlCreateList("", 82, 300, 180, 200, BitAND($GUI_SS_DEFAULT_LIST, BitNOT($LBS_SORT)))
$link1 = GUICtrlSetData($MyList, $site1)

    Opt("GUICoordMode", 2)
    $Button_1 = GUICtrlCreateButton("Запуск игры", -140, 0, 100, 25)
    $Button_2 = GUICtrlCreateButton("Регистрация", -100, 10)
    $Button_3 = GUICtrlCreateButton("Выход", -100, 10)

    While 1
        $msg = GUIGetMsg()
      Select
        Case $msg = $GUI_EVENT_CLOSE
               ExitLoop
        Case $msg = $Button_1
		Run(GUICtrlRead($Mylist))
        Case $msg = $Button_2
		ShellExecute(GUICtrlRead($Mylist))
	Case $msg = $Button_3
		exit
      EndSelect
    WEnd
EndFunc


Возможно это было сделать через какую то другую функцию, но я только 2 дня этим занимаюсь, и похожей темы не нашел.
 

Spyhunter

Знающий
Сообщения
56
Репутация
13
Re: [Элементы GUI] GUICtrlSetData несколько параметров

Сформулируй вопрос поточнее :stars:
А читать строку из таблицы можно так:
Код:
GUICtrlRead(GUICtrlRead($Mylist))
 

britanec74

Знающий
Сообщения
22
Репутация
8
Re: [Элементы GUI] GUICtrlSetData несколько параметров

Закриптуй нужную строку
Код:
_StringEncrypt
 
Автор
N

nicodemus

Новичок
Сообщения
2
Репутация
0
Re: [Элементы GUI] GUICtrlSetData несколько параметров

нужно что бы из одной ссылки при нажатии разных кнопок происходили разные действия. Что бы в листе отображался 1 параметр (Сайт) а внутри было 2 и следовательно первая кнопка читала 2 параметр который не отображается в листе, а вторая читала 1 параметр и переходила на сайт. А насчет того что вы написали, если оно относится к открытию ссылки в браузере то если использовать ваш параметр выскакивает ошибка. А что даст это шифрование?
 

Spyhunter

Знающий
Сообщения
56
Репутация
13
Re: [Элементы GUI] GUICtrlSetData несколько параметров

Если нужно 2 параметра в одной строке таблицы, то я делаю так:
Первый параметр в 1 столбец, а второй во 2 столбец.
После чего крываю 2 столбец.
А дальше уже читаю содержимое строки. Получаю 2 значения через разделитель, например, '|'. А вариантов как из этой строки получить 1-ое или 2-ое значение довольно много

Код:
$avArray = StringSplit(GUICtrlRead(GUICtrlRead($hListView)), '|')


Остаётся подставить туда дескриптор своей таблицы и получишь массив, где
$avArray[1] - текст первого столбца, а
$avArray[2] - второго

Скрыть столбец можно функцией
Код:
_GUICtrlListView_HideColumn($hWnd, $iCol)


Из GuiListView.au3
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
Re: [Элементы GUI] GUICtrlSetData несколько параметров

Предупреждение За нарушение правил форума (пункт Б.5):
Имя темы должно нести смысловую нагрузку (отражать суть вопроса/проблемы)
Правильно сформулированное название темы привлекает больше внимания, и шансы получить конкретный ответ увеличиваются.


Данные правила могут пополняться локальными правилами раздела.
Как правильно называть темы

"[Элементы GUI] GUICtrlSetData несколько параметров" - это неприемлемое название темы, переименуйте тему иначе она будет закрыта, а вам возможно будет выдан бан на несколько дней.

С уважением, ваш Глобальный модератор.
 
Верх