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

Страниц (22): В начало « ... 14 15 16 17 18 19 20 21 [22]
 

211. 007wan - 26 Апреля, 2019 - 08:02:04 - перейти к сообщению
А остальные? Просто я потом буду знать как их "превращать"
(Добавление)
Идея как сделать цветные статики, эдит, комбо итд.
Используя CreateSolidBrush function

И
 Цитата:
WM_CTLCOLORMSGBOX
WM_CTLCOLOREDIT
WM_CTLCOLORLISTBOX
WM_CTLCOLORBTN
WM_CTLCOLORDLG
WM_CTLCOLORSCROLLBAR
WM_CTLCOLORSTATIC[WM_CTLCOLORSTATIC message]

(Добавление)
А значит и
CODE:
SetTextColor((HDC)wParam, RGB(255, 0, 0));
212. Zireael - 26 Апреля, 2019 - 17:26:25 - перейти к сообщению
 Цитата:
А остальные?

Остальные точно также, сравнить 2 строки и найти отличия не составит труда.
 Цитата:
Идея как сделать цветные статики, эдит, комбо итд.

 Цитата:
WM_CTLCOLORSTATIC
Return value
If an application processes this message, the return value is a handle to a brush
(Если приложение обрабатывает это сообщение, возвращаемое значение является хендлом кисти)

В кибор ничего не возвращается.
213. 007wan - 27 Апреля, 2019 - 05:03:11 - перейти к сообщению
Понял.
Кстати, насчет калькулятор программиста, где вычисляем из буквы #define, я только сейчас понял, что
Цвет, например, (или любой) IndianRe вычисляем HEX отдельной каждой #CD|5C|5C (Получаем 205, 92, 92 это RGB), а одной цифрой для кибор я думаю, что просто вычислить целую без разделения. Офигеть вроде как просто.
214. 007wan - 27 Апреля, 2019 - 11:17:50 - перейти к сообщению
Как получить состояние фокуса послеждней нажатой галочки?
(Добавление)
или как получить из 3 галочек получить или узнать какая была нажата последняя
215. Zireael - 27 Апреля, 2019 - 11:33:28 - перейти к сообщению
 Цитата:
как получить из 3 галочек получить или узнать какая была нажата последняя

Записать в переменную хендл галки.
216. 007wan - 27 Апреля, 2019 - 22:39:36 - перейти к сообщению
так хендл меняется. я помню получал хендл списка и при каждом запуске он разный.
217. Zireael - 28 Апреля, 2019 - 03:05:35 - перейти к сообщению
 Цитата:
так хендл меняется

Да он всегда разный. Это ничего не меняет.
При создании окна возвращается его хендл, т. е.
 Цитата:
function getmessage(0, WM_CREATE)
{
check1=CreateWindow(0, "BUTTON", "Галка1", ...); // создать галку1
check2=CreateWindow(0, "BUTTON", "Галка2", ...); // создать галку2
}

check1, check2 - это будут хендлы созданных галок.
Во время обработки события (нажатие галки):
CODE:
int last_check=check1; // запомнили какая галка была нажата последней

Потом сравнивайте:
CODE:
if(last_check==check1){} //последней нажата первая галка
if(last_check==check2){} // последней нажата вторая галка
218. 007wan - 28 Апреля, 2019 - 04:29:07 - перейти к сообщению
Zireael , Блин я думал примерно так же. Только когда выберем галочку одну переменную задать ей значение соотвественно для галочек 0-выбрана первая,1-вторая,2-третья, только нету ли другого способа как этот или что выше?
(Добавление)
Просто я хочу, что бы это функционально выглядело. Как-то так:
CODE:

GetLastButton(...);


(Добавление)
Ладно. Как лучше через for сделать, что бы
 Цитата:
CODE:
Status_Combobox1 = SendMessage(Object_Combobox1, CB_GETCURSEL, 0, 0);
Status_Checkbox1 = SendMessage(Object_Checkbox1, BM_GETSTATE, 0, 0);
Status_Checkbox2 = SendMessage(Object_Checkbox2, BM_GETSTATE, 0, 0);
Status_Checkbox3 = SendMessage(Object_Checkbox3, BM_GETSTATE, 0, 0);
Status_Checkbox4 = SendMessage(Object_Checkbox4, BM_GETSTATE, 0, 0);
Status_Checkbox5 = SendMessage(Object_Checkbox5, BM_GETSTATE, 0, 0);
Status_Checkbox6 = SendMessage(Object_Checkbox6, BM_GETSTATE, 0, 0);
Status_Checkbox7 = SendMessage(Object_Checkbox7, BM_GETSTATE, 0, 0);
Status_Checkbox8 = SendMessage(Object_Checkbox8, BM_GETSTATE, 0, 0);

Проверял если они равны 9, то поставить в статусе галочки(галочек) "1", а если 8, то "0"
(Добавление)
Так?
CODE:
for(int i=1; i<8; i++)
{
if (Status_Checkbox[i] == "9")
{
Status_Checkbox[i] = "1";
}
}


Тема закрыта! Продолжение в теме "вопрос по external и др - 2".

Powered by ExBB FM 1.0 Final