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

Страниц (14): В начало « ... 2 3 4 5 [6] 7 8 9 10 ... » В конец
 

51. Zireael - 17 Ноября, 2019 - 06:14:48 - перейти к сообщению
 Цитата:
А что делать если кнопки исчезают?
Обновить окно.

Или сначала кнопки создать, потом таб.
 Цитата:
function getmessage(0, WM_CREATE)
{
Object_Tab1 = CreateWindow(0, "SysTabControl32", "", WS_VISIBLE | WS_CHILD, 10, 10, 380, 150, gethwnd(0), 0, 0, 0);

Object_Button1 = CreateWindow(0, "BUTTON", "+", WS_VISIBLE | WS_CHILD, 10, 12, 20, 20, gethwnd(0), 0, 0, 0);
Object_Button2 = CreateWindow(0, "BUTTON", "õ", WS_VISIBLE | WS_CHILD, 370, 12, 20, 20, gethwnd(0), 0, 0, 0);
}

CODE:
function getmessage(0, WM_CREATE)
{
Object_Button1 = CreateWindow(0, "BUTTON", "+", WS_VISIBLE | WS_CHILD, 10, 12, 20, 20, gethwnd(0), 0, 0, 0);
Object_Button2 = CreateWindow(0, "BUTTON", "õ", WS_VISIBLE | WS_CHILD, 370, 12, 20, 20, gethwnd(0), 0, 0, 0);
Object_Tab1 = CreateWindow(0, "SysTabControl32", "", WS_VISIBLE | WS_CHILD, 10, 10, 380, 150, gethwnd(0), 0, 0, 0);
}
52. 007wan - 17 Ноября, 2019 - 06:28:56 - перейти к сообщению
Спасибо, а можно константу СЭТ_ИТЭМКУРСЕЛ?

Пока так сейчас
код (Отобразить)

(Добавление)
Нашел там же. Вроде копировал уже, пропала... из кода...
(Добавление)
Zireael , Скажите, пожалуйста, А как переименовать вкладку у Таба?
53. Zireael - 17 Ноября, 2019 - 07:20:01 - перейти к сообщению
 Цитата:
как переименовать вкладку у Таба?

CODE:
#define TCM_SETITEMA 4870
54. 007wan - 17 Ноября, 2019 - 07:27:42 - перейти к сообщению
 Zireael пишет:
 Цитата:
как переименовать вкладку у Таба?

CODE:
#define TCM_SETITEMA 4870
Не, а как использовать? Там же придется новый буфер и текст создавать?
(Добавление)
---
Как можно получить выбранную вкладку, не используя костыли типа этих?
CODE:
getmouse(Mouse_x, Mouse_y);

if(WindowFromPoint(Mouse_x, Mouse_y) == Object_Tab1)
{
if(getkeystate(1) || getkeystate(2) || getkeystate(4))
{
Selected_Tab1 = sendmessage(TCM_GETCURSEL, 0, 0, formatiw(Object_Tab1));
}
}
Может как-то через WM
55. Zireael - 17 Ноября, 2019 - 07:30:51 - перейти к сообщению
 Цитата:
Там же придется новый буфер и текст создавать?

Не нужно. Просто скопировать в буфер новый текст вкладки.
 Цитата:
size(#text_tab_c[0])

Исправить на sizearray(text_tab_c).
 Цитата:
Как можно получить выбранную вкладку

CODE:
#define TCM_GETCURSEL 4875
56. 007wan - 17 Ноября, 2019 - 07:34:46 - перейти к сообщению
Zireael , Я имею ввиду получить выбранну вкладку, когда нажали на вкладку.
(Добавление)
Отловить событие, когда нажали на вкладку, а значит получаем номер её.
57. Zireael - 17 Ноября, 2019 - 08:05:13 - перейти к сообщению
 Цитата:
Отловить событие, когда нажали на вкладку, а значит получаем номер её.

CODE:
#define TCM_GETCURSEL 4875
#define NM_CLICK -2
#define TCN_SELCHANGE -551


function getmessage(0, WM_NOTIFY)
{
if(addressi(message.lparam)==Object_Tab1)
{
if(addressi(message.lparam+8)==NM_CLICK || addressi(message.lparam+8)==TCN_SELCHANGE)
{
// current_item=sendmessage(TCM_GETCURSEL, 0, 0, formatiw(Object_Tab1)); // узнать номер текущей вкладки
return;
}
}
}
58. 007wan - 17 Ноября, 2019 - 08:37:02 - перейти к сообщению
Не перестаешь удивлять!!)) Как же нравится эьа программа и функции!)))
59. Nikanr - 17 Ноября, 2019 - 09:50:29 - перейти к сообщению
Как снять прямоугольник фокуса с дочерних контролов? Нашел эту штуку, но не получается заполнить MAKEWPARAM

CODE:
SendMessage(hWndButton, WM_CHANGEUISTATE, MAKEWPARAM(UIS_SET, UISF_HIDEFOCUS), 0);
60. 007wan - 17 Ноября, 2019 - 09:58:18 - перейти к сообщению
Ищи функцию SetFocus(0); Win Api. Где 0, это указатель HWND окна или 0 снять всё(вроде)
(Добавление)
Просто у меня покв нет возможности выложить код, не могу за комп.
(Добавление)
Найди любую external на форуме и замени имя подключаемой директивы на SetFocus

Powered by ExBB FM 1.0 Final