Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » вопрос по external и др

Страниц (22): В начало « ... 6 7 8 9 [10] 11 12 13 14 ... » В конец
 

91. 007wan - 23 Марта, 2019 - 06:22:07 - перейти к сообщению
НУ я запихал все кнопки, галочки и списки в WM CREATE причем все они под разные окна, а шоудиалог 1 в начала где креатедиалог и окно вообще пустое
92. 007wan - 24 Марта, 2019 - 02:22:14 - перейти к сообщению
А я нашел сайт на русском. Всё сейчас буду шпарить Ссылка
93. 007wan - 28 Марта, 2019 - 03:11:01 - перейти к сообщению
Почему-то не получается сделать группу из галочек. Я использую это для галочек, а там для кнопок, но галочки это подвиды кнопок. и не работает. Галочка превращается в кнопку. Смотрел тут
 Цитата:

BS_GROUPBOX
Creates a rectangle in which other controls can be grouped. Any text associated with this style is displayed in the rectangle's upper left corner.



Важные ссылки по этой теме:

94. Zireael - 28 Марта, 2019 - 04:35:00 - перейти к сообщению
 Цитата:
не получается сделать группу из галочек.

CODE:
#define WS_VISIBLE 268435456
#define WS_CHILD 1073741824
#define BS_GROUPBOX 7
#define BS_AUTOCHECKBOX 3
external(INT, "CreateWindow", "CreateWindowExA", "User32.dll" );

int group, b0, b1, b2;
createdialog(0);
showdialog(0, "Диалог",300, 300, 300, 300, 1, 1);

loop()sleep(1);

function getmessage(0, WM_CREATE)
{
group=CreateWindow(0, "BUTTON", "Группа", BS_GROUPBOX | WS_CHILD | WS_VISIBLE, 10, 10, 100, 100, gethwnd(0), 0, 0, 0);
b0=CreateWindow(0, "BUTTON", "Check1", BS_AUTOCHECKBOX | WS_CHILD | WS_VISIBLE, 10, 25, 70, 20, group, 0, 0, 0);
b1=CreateWindow(0, "BUTTON", "Check2", BS_AUTOCHECKBOX | WS_CHILD | WS_VISIBLE, 10, 50, 70, 20, group, 0, 0, 0);
b2=CreateWindow(0, "BUTTON", "Check3", BS_AUTOCHECKBOX | WS_CHILD | WS_VISIBLE, 10, 75, 70, 20, group, 0, 0, 0);
}

CODE:
#define WS_VISIBLE 268435456
#define WS_CHILD 1073741824
#define BS_GROUPBOX 7
#define BS_AUTORADIOBUTTON 9
external(INT, "CreateWindow", "CreateWindowExA", "User32.dll" );

int group, b0, b1, b2;
createdialog(0);
showdialog(0, "Диалог",300, 300, 300, 300, 1, 1);

loop()sleep(1);

function getmessage(0, WM_CREATE)
{
group=CreateWindow(0, "BUTTON", "Группа", BS_GROUPBOX | WS_CHILD | WS_VISIBLE, 10, 10, 100, 100, gethwnd(0), 0, 0, 0);

b0=CreateWindow(0, "BUTTON", "Check1", BS_AUTORADIOBUTTON | WS_CHILD | WS_VISIBLE, 10, 25, 70, 20, group, 0, 0, 0);
b1=CreateWindow(0, "BUTTON", "Check2", BS_AUTORADIOBUTTON | WS_CHILD | WS_VISIBLE, 10, 50, 70, 20, group, 0, 0, 0);
b2=CreateWindow(0, "BUTTON", "Check3", BS_AUTORADIOBUTTON | WS_CHILD | WS_VISIBLE, 10, 75, 70, 20, group, 0, 0, 0);
}
95. 007wan - 28 Марта, 2019 - 04:43:35 - перейти к сообщению
Zireael , О, спасибо. Понял. Оказалось надо было создать новое окно, а я пихал это в статик)
(Добавление)
Zireael , А можно спросить: А в чем заключается трудность с созданием Tab? Просто может я пойму или накину пару идеи каких-нибудь.
96. 007wan - 28 Марта, 2019 - 09:03:02 - перейти к сообщению
Да не работает 100%.
CODE:
StatusCombobox1 = sendmessage(CB_GETCURSEL, 0, 0, formatiw(Object_Combobox1));


---------------------------------------------------
при нажатии на меню активируется таймер, в котором то, что ниже.
CODE:
StatusCombobox1 = sendmessage(CB_GETCURSEL, 0, 0, formatiw(Object_Combobox1));


А это сюда:

CODE:

//создание диалогов, а потом один показываю
, а при нажатии на меню запускается таймер, который ждет пока закрою диалог, что бы взять значения комбо, например. так же при открытии меню ОТКРЫВАЕТСЯ диалог
//тут ещ код
function getmessage(1, WM_CREATE)
{
Object_Group1 = CreateWindow(0, "BUTTON", "Настройки программы", BS_GROUPBOX | WS_CHILD | WS_VISIBLE , Group1_Posititon[0], Group1_Posititon[1], Group1_Size[0], Group1_Size[1], gethwnd(1), 0, 0, 0);
Object_Combobox1 = CreateWindow(0, "COMBOBOX", "", CBS_DROPDOWNLIST | WS_CHILD | WS_VISIBLE | WS_BORDER, Combobox1_Posititon[0], Combobox1_Posititon[1], Combobox1_Size[0], Combobox1_Size[0], Object_Group1, 0, 0, 0);
for(int i=0; i<sizearray(Text_Combobox1); i++)
{
strcpy(#Bute_Combobox1[0], Text_Combobox1[i]);
sendmessage(CB_ADDSTRING, 0, address(#Bute_Combobox1[0]), formatiw(Object_Combobox1));
}
///тут еще код...
}
///тут еще код...

loop()
{
textout(0, 150, 250, "Выбранная строка: "+format(StatusCombobox1), 1);
sleep(10);
}



(Добавление)
Извиниюяьс за переменные в позиции и размерах. там просто расчеты были и короче там фифры поставьте
97. Zireael - 28 Марта, 2019 - 17:50:40 - перейти к сообщению
 Цитата:
Да не работает 100%.
StatusCombobox1 = sendmessage(CB_GETCURSEL, 0, 0, formatiw(Object_Combobox1));

Работает. Пример есть на предыдущей странице.
98. 007wan - 29 Марта, 2019 - 06:03:06 - перейти к сообщению
Zireael , Я всё скопировал точь-в-точь, да твоё налево! Я даже переделал весь код под этот код. Я сделал копию старого скрипта и взял код, который на предыдущей странице и начал постепенно восстанавливать код из копии, но только в коде, который на предыдущей странице. Видать что-то добавил и опять конфликтует что-то.
99. Adomb - 30 Марта, 2019 - 09:07:36 - перейти к сообщению
Можно ли как-то проверить, что от админа запустили скрипт (экзешник)?
100. Zireael - 30 Марта, 2019 - 11:10:03 - перейти к сообщению
 Цитата:
Можно ли как-то проверить, что от админа запустили скрипт (экзешник)?

CODE:
external(INT, "IsUserAnAdmin", "IsUserAnAdmin", "Shell32.dll");
if(IsUserAnAdmin())messagebox("От админа");
else messagebox("Не от админа");

Powered by ExBB FM 1.0 Final