Воспроизвести действие кнопки на вкладке
В форме LineDetails у нас есть вкладка [Области]. Под этой вкладкой находится кнопка [Read Areas] . Эта кнопка является избыточной и в ней нет необходимости, поскольку действие, которое происходит при нажатии на нее, должно выполняться при открытии вкладки [Области].
[Control("Button")]
class ReadCommonAreas
{
void clicked()
{
ContractArea contractArea;
AmountMST sumContractArea;
super();
ContractLine_ds.readCommonAreas(ContractLine);
h1_h2.realValue(ContractLine_ds.h1_h2(ContractLine));
efa.realValue(ContractLine_ds.efa(ContractLine));
bfa.realValue(ContractLine_ds.bfa(ContractLine));
mfa.realValue(ContractLine_ds.mfa(ContractLine));
sumArea.realValue(h1_h2.realValue() + efa.realValue() + bfa.realValue() + mfa.realValue());
while select AreaSelector, sum(RentalValue)
from contractArea
group by AreaSelector
where contractArea.ContractId == Contract.ContractId
&& contractArea.RentalObjectId == ContractLine.RentalObjectId
{
sumContractArea += contractArea.RentalValue;
switch (contractArea.AreaSelector)
{
case AreaSelector::CommonAreaBuilding :
contractAreaBFA.realValue(contractArea.RentalValue);
break;
case AreaSelector::CommonAreaSection :
contractAreaEFA.realValue(contractArea.RentalValue);
break;
case AreaSelector::PrimaryArea, AreaSelector::SecondaryArea :
contractAreaH1_H2.realValue(contractArea.RentalValue);
break;
case AreaSelector::CommonAreaFixed :
contractAreaMFA.realValue(contractArea.RentalValue);
break;
}
}
contractAreaSum.realValue(sumContractArea);
}
}
Как адаптировать это, когда нажимается на Области, чтобы показать информацию, например, когда она нажата на Считанные Области?
И после этого я удалю кнопку Read Areas.
1 ответ
Просто сделай Read Areas
кнопка Visible = No
чтобы скрыть это.
Тогда на Areas
на вкладке переопределите pageActivated()
метод и сделать ReadAreas.clicked()
, Таким образом, основной код остается в такте.
То, что вы должны учитывать, это если пользователь вкладывает / выключает Areas
страница, каждый раз, когда он нажимает Read Areas
кнопка... не уверен, если это проблема или нет.
Используйте обработчики событий и тому подобное, где это уместно. Это просто не в моей голове общий подход.