Форум профессиональных мебельщиков PROMEBELclub

Форум профессиональных мебельщиков PROMEBELclub (https://промебельклуб.рф/forum/index.php)
-   Базис-мебельщик. Скрипты (https://промебельклуб.рф/forum/forumdisplay.php?f=273)
-   -   БАЗИС 10 - Скрипты (https://промебельклуб.рф/forum/showthread.php?t=12463)

Sergenald 21.02.2018 16:58

Всем привет, сразу к делу:
1) Как я понял, скроллбар в группы добавили, за что большое спасибо, а вот прокрутку к колесу мыши не привязали? Или хотя бы ивента на колесо мыши нет, чтоб привязать?
2) Есть ли возможность динамически обновлять список в комбобоксах? (newCombo()). И добавлять и удалять по нажатию кнопки.
3) Есть ли возможность обновления окна, если не помогло потеребить visible? (но помог вызов alert() между командами... но это совсем не выход) Если вкратце, то не найдя как обновить список в комбобоксах, просто удаляю их и создаю новые с обновлённым списком, но незадача, если нет алерта после удаления старого и добавлением нового, то ни чего не происходит, даже если вставить там изменение видимости как группы с комбобоксом, так и всей формы

Letos 21.02.2018 18:10

Цитата:

Сообщение от Sergenald (Сообщение 448145)
Всем привет, сразу к делу:
1) Как я понял, скроллбар в группы добавили, за что большое спасибо, а вот прокрутку к колесу мыши не привязали? Или хотя бы ивента на колесо мыши нет, чтоб привязать?
2) Есть ли возможность динамически обновлять список в комбобоксах? (newCombo()). И добавлять и удалять по нажатию кнопки.
3) Есть ли возможность обновления окна, если не помогло потеребить visible? (но помог вызов alert() между командами... но это совсем не выход) Если вкратце, то не найдя как обновить список в комбобоксах, просто удаляю их и создаю новые с обновлённым списком, но незадача, если нет алерта после удаления старого и добавлением нового, то ни чего не происходит, даже если вставить там изменение видимости как группы с комбобоксом, так и всей формы

Добрый вечер.
1. С событиями (ивентами) это Вы слишком перегнули. Тогда бы уж вообще добрую половину переменных (или вообще все) прокинуть бы в скрипты (да и формы, имхо, сделать по-нормальному). Думаю, очень много времени понадобится на то, чтобы дополнить всеми функциями, которые могут понадобиться.
2. Тут весело копаться, и печально наблюдать результат. Добавления/удаления новых строк есть много способов - пока все их пробовал, такой прикольной фигни повидал:), на этом веселая часть ответа заканчивается. Печальная часть ответа в том, что в отладчике можно наблюдать как добавляются/удаляются новые значения в список, а на форме ничего не меняется. Думаю, тут даже костылями не обойтись.
3. Играть с visible - это, на самом деле, тоже не очень правильный костыль. С формами странная вещь - как такового доступа к самим визуальным компонентам нет. Все компоненты того же типа, что и компоненты на панели свойств(?!), а у формы тоже особо никаких функций нет. Так что, думаю и тут костылями проблему сложно самим решить.

wizardpnz 03.03.2018 22:45

Как поставить параметрический крепёж Шуруп 4х30 по типу пласть-пласть
например прикрутить накладку ящика к передней детали ящика

Letos 04.03.2018 20:48

Цитата:

Сообщение от wizardpnz (Сообщение 449337)
Как поставить параметрический крепёж Шуруп 4х30 по типу пласть-пласть
например прикрутить накладку ящика к передней детали ящика

Только костылями: установить как обычно и сместить/повернуть как надо.
Вот небольшой пример для фронтальной панели:
Код:

var panel = Model.Selected.AsPanel;
var point = {
    x: panel.GabMin.x, // начало панели, чтобы точно знать, откуда смещать
    y: 100, //Единственная координата, по которой происходит правильное смещение
    z: panel.GabMax.z //точка на толщине панели, откуда будет начинаться крепеж (его позиция)
};
var furn = Action.Properties.NewFurnitureValue();
if (furn.Choose()){
    var fast = furn.Mount1(panel, point.x, point.y, point.z, 0);
    fast.RotateY(90);
    //смещаем только по х, потому что по У уже сместили при установке
    var shift = NewVector(300, 0, 0);
    fast.TranslateGCS(shift);
}

Здесь
point - условная точка установки панели. Если ничего не менять, то скрипт поставит крепеж в минимум по х панели, максимум по z панели (слева спереди на фронтальном виде) и по у в точку 100 в ГСК.
shift - вектор сдвига. В данном случае сдвиг по х на 300 в ГСК.
Для установки на горизонтальную/вертикальную нужно поиграть с осями.

wizardpnz 04.03.2018 23:34

установка шурупа в планку для крепления столешниц
я поступил так
T = SH30.Mount1(PlankaZ, 0,0,0);
T.Orient(Axis_X, Axis_Z);
T.Translate(PlankaZ.GabMin.x + 50, 0, PlankaZ.GabMin.z + PlankaZ.GSize.y/2);

вот благодаря этому форуму накидал начальную версию для построения более менее стандартных кухонь
https://youtu.be/gV0RG-4GFh4

wizardpnz 07.03.2018 23:55

Как очистить список элементов NewCombo, или удалить элемент управления из панели свойств и создать заново?

Letos 08.03.2018 12:27

Цитата:

Сообщение от wizardpnz (Сообщение 449894)
Как очистить список элементов NewCombo?

Как минимум два варианта:
Код:

combo.ComboItems.Clear();//1

combo.ComboItems = [];//2

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

alexrain 09.03.2018 15:02

Всем привет.
Разобрался как с помощью скрипта построить размер.
Сразу возник вопрос - как изменять свойства размера?
Например, размер текста (по умолчанию значение - "-1")?
Или, например, габариты?

Буду очень признателен!!!!

wizardpnz 09.03.2018 15:27

Цитата:

Сообщение от Letos (Сообщение 449909)
Как минимум два варианта:
Код:

combo.ComboItems.Clear();//1

combo.ComboItems = [];//2

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

в 8-ке не работает ComboItems = [] (((

Letos 10.03.2018 11:17

Цитата:

Сообщение от alexrain (Сообщение 449962)
Всем привет.
Разобрался как с помощью скрипта построить размер.
Сразу возник вопрос - как изменять свойства размера?
Например, размер текста (по умолчанию значение - "-1")?
Или, например, габариты?

Буду очень признателен!!!!

Размер текста:
Код:

size.TextSize = 14;
Габариты:
Код:

size.Size = 256;
size.Build();

Проверял на уже созданных размерах, ибо мне не подвластна технология создания размера скриптом:). Думаю, если Вы ею поделитесь, многие будут Вам признательны.


Текущее время: 02:01. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
© 2007-2023 PROMEBEL