Как я добавляю дополнительные параметры к обработчику ExtJS?

std::abs принимает любое из:

Однако, до C ++ 17, если вы не [ 117], тогда доступны только целочисленные перегрузки (первые три в списке). Вы передаете float, который одинаково хорошо конвертируется в любые три из них, поэтому компилятор не может сказать, какой из них вы хотели.

Если бы вы действительно хотели целочисленную перегрузку, вы бы использовали приведение к int, long или long long, в зависимости от ситуации.

Но вы этого не сделаете: вы хотите вызвать перегрузку float, поэтому перенесите ее в область действия с помощью #include , и тогда она будет автоматически выбрана, потому что вы передаете float.

На самом деле, на самом деле, вам просто повезло , что даже целочисленные перегрузки доступны, потому что вы никогда #include d ; у вашей инструментальной цепочки должно быть , как это случилось , чтобы сделать это для вас. Всегда включайте соответствующие заголовки в соответствии с документацией.

7
задан Huuuze 27 March 2009 в 15:59
поделиться

2 ответа

Я бы на самом деле использовал прототип Exts createDelegate.

var appendBooleanOrInsertionIndex = 0; // Inserts the variables into the front of the function.
    appendBooleanOrInsertionIndex = true; // Appends the variables to the end of the arguments

var myButton = new Ext.Button({
   id : 'myButton',
   renderTo : 'mybutton',
   text : 'Save',
   handler : myButtonHandler.createDelegate(this, [param1, param2], appendBooleanOrInsertionIndex),
   scope : this
});
9
ответ дан 6 December 2019 в 08:17
поделиться

Я не знаю то, что это, что Вы хотите передать, но использование обертки могло помочь:

var myButtonHandler = function (button, event, additionalData){
   //code goes here
};

var myButton = new Ext.Button({
  id : 'myButton',
  renderTo : 'mybutton',
  text : 'Save',
  handler : handlerWrapper,
  scope : this
});

var handlerWrapper = function (button, event){
  // Fetch additional data
  var additionalData = "whatever";
  myButtonHandler(button, event, additionalData);
};
3
ответ дан 6 December 2019 в 08:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: