Переключение на Главную Страницу Страницы: 1 ... 18 19 [20] 21 22 ... 46 ОтправитьПечать
Очень популярная тема (более 25 ответов) Тестирование 1cpp-icl (icpp) (число прочтений - 195580 )
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #285 - 04. Июня 2008 :: 11:42
Печать  
artbear писал(а) 04. Июня 2008 :: 11:26:
Скажите, а для ТП есть подобная проблема?
ИМХО там вроде такой же код.
Проверьте кто-нибудь на 2.5.0.6 и 3.0
Скорее всего в 3.0 kms перехватывает события клавиатуры и бага на 3.0 нету.

В ТП этой проблемы изначально не было.
  

1&&2&&3
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #286 - 04. Июня 2008 :: 11:46
Печать  
artbear писал(а) 04. Июня 2008 :: 11:24:
Баг http://www.1cpp.ru/bugs/show_bug.cgi?id=3473
(Ентер на АктивИкс-е, созданном на кнопке)
исправлен и в 2.5, и в 3.0
Будет в очередных сборках.
Решение со вставкой формулы на мой взгляд это борьба со следствием, а не с причиной.

Более академичное, на мой взгляд, решение такое:
Код
Выбрать все
class CAXControlWnd : public CWnd
{
...
protected:
	virtual BOOL PreTranslateMessage(MSG* pMsg)
	{
		if (pMsg->message == WM_KEYDOWN)
			if (pMsg->wParam == VK_RETURN)
				return TRUE;
		return CWnd::PreTranslateMessage(pMsg);
	};
};
 


ps
код не проверял, писал на коленке.
по крайней мере в этом направлении нужно дествовать
  

1&&2&&3
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #287 - 04. Июня 2008 :: 11:55
Печать  
Дима, а что будет с обработкой события у АктивИкс-а в твоем варианте? Дойдет ли событие по нажатию Ентер-а до АктивИкс ?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #288 - 04. Июня 2008 :: 11:56
Печать  
trad писал(а) 04. Июня 2008 :: 11:46:
artbear писал(а) 04. Июня 2008 :: 11:24:
Баг http://www.1cpp.ru/bugs/show_bug.cgi?id=3473
(Ентер на АктивИкс-е, созданном на кнопке)
исправлен и в 2.5, и в 3.0
Будет в очередных сборках.
Решение со вставкой формулы на мой взгляд это борьба со следствием, а не с причиной.

Более академичное, на мой взгляд, решение такое:

В общем, согласен, конечно.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #289 - 04. Июня 2008 :: 12:37
Печать  
trad писал(а) 04. Июня 2008 :: 11:42:
В ТП этой проблемы изначально не было.


Дим, всегда была. Я давно жалуюсь. Если создавать на кнопке, то такая проблема у многих активиксов и ТП присутствовала.
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #290 - 04. Июня 2008 :: 12:38
Печать  
Arta писал(а) 04. Июня 2008 :: 12:37:
trad писал(а) 04. Июня 2008 :: 11:42:
В ТП этой проблемы изначально не было.


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

Артем, можешь простой тест нарисовать?
Типа ТП с поставщиком ТЗ ?
Дима утверждает, что быть такого не может, я с ним согласен - в исходниках вроде есть спец. код для обхода Улыбка
И уже точно решим.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #291 - 04. Июня 2008 :: 12:39
Печать  
Я создаю все контролы через Перехватчик. Примерно так:
Код
Выбрать все
Функция СоздатьЭлементУправленияНаФорме(Объект, Атрибут)
Экспорт
	  _Форма = СоздатьОбъект("Форма");
	  Элемент = _Форма.СоздатьЭлементУправленияНаФорме(Конт.Форма, Объект, Атрибут);

	  Реквизит = РасширениеФормы.ПолучитьАтрибут(Атрибут);
	  Реквизит.Формула = "a=a"; // <== ОНО

	  Если Конт.Форма.ТолькоПросмотр() = 1 Тогда
		    Реквизит.Доступность = 0;
	  КонецЕсли;
	  Возврат Элемент;
КонецФункции 



Для себя эту проблему давно решил.
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #292 - 04. Июня 2008 :: 12:39
Печать  
trad писал(а) 04. Июня 2008 :: 11:46:
Более академичное, на мой взгляд, решение такое:
Код
Выбрать все
class CAXControlWnd : public CWnd
{
...
protected:
	virtual BOOL PreTranslateMessage(MSG* pMsg)
	{
		if (pMsg->message == WM_KEYDOWN)
			if (pMsg->wParam == VK_RETURN)
				return TRUE;
		return CWnd::PreTranslateMessage(pMsg);
	};
};
 


ps
код не проверял, писал на коленке.
по крайней мере в этом направлении нужно дествовать

Такой код не проходит, баг исчезает, но АктивИкс перестает реагировать на нажатие Ентер-а.
Дима обещал покопать Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #293 - 04. Июня 2008 :: 12:41
Печать  
artbear писал(а) 04. Июня 2008 :: 12:39:
Такой код не проходит, баг исчезает, но АктивИкс перестает реагировать на нажатие Ентер-а.
Дима обещал покопать Улыбка

Пока оставляю в исходниках мой вариант - вреда он вроде как не наносит Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #294 - 04. Июня 2008 :: 12:42
Печать  
artbear писал(а) 04. Июня 2008 :: 12:38:
Артем, можешь простой тест нарисовать?
Типа ТП с поставщиком ТЗ ?
Дима утверждает, что быть такого не может, я с ним согласен - в исходниках вроде есть спец. код для обхода Улыбка
И уже точно решим.


Хмм... Вот подумал, раз там перехват клавы работает, то может я что путаю. Но точно помню что я неоднократно жаловался, на сей баг.
Я бага не замечаю уже год, как стал править формулу.

Тест - лень. Чесно слово. Давай будем считать, что я облажался?  Смех
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #295 - 04. Июня 2008 :: 13:27
Печать  
Arta
Всю жисть создаю ТП на кнопках. формулы никогда не пишу. проблем нет.
Я те точно говорю. Ентер до формы не доходит т.к. ТП его обрабатывает на ранней стадии в собственных целях.
  

1&&2&&3
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #296 - 05. Июня 2008 :: 05:18
Печать  
Выложена очередная сборка icpp
Цитата:
[+] http://www.1cpp.ru/bugs/show_bug.cgi?id=3889
Реализация предопределенных функций для любых КОП - вирт() и я() - без необходимости определения их в модуле класса


Прошу качать и тестить.

Обсуждение фичи на http://www.1cpp.ru/forum/YaBB.pl?num=1207661901/0 или в багзилле.

Выкладываю тестовую конфигурацию для проверки.

Важно: две функции ( вирт() и я() ) в глобальнике нужны только для синтакс-контроля в режиме Конфигуратора,
в режиме Предприятия классы прекрасно создаются и без этих функций.

  

1cpp_test_virt_2.rar ( 12 KB | Загрузки )

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #297 - 05. Июня 2008 :: 07:11
Печать  
artbear писал(а) 04. Июня 2008 :: 12:39:
Такой код не проходит, баг исчезает, но АктивИкс перестает реагировать на нажатие Ентер-а.
Дима обещал покопать Улыбка

С помощью Саши Орефкова вышел на метод IOleInPlaceActiveObject::TranslateAccelerator.
Теперь ентер работает.
Код
Выбрать все
BOOL CAXControlWnd::PreTranslateMessage(MSG* pMsg)
{
	if (pMsg->message == WM_KEYDOWN)
	{
		if (pMsg->wParam == VK_RETURN)
		{
			LPUNKNOWN iUnkControl = GetControlUnknown();
			if (iUnkControl)
			{
				IOleInPlaceActiveObject *iOleInPlaceActiveObject = NULL;
				HRESULT res = iUnkControl->QueryInterface(IID_IOleInPlaceActiveObject, (void**)&iOleInPlaceActiveObject);
				if (res == S_OK)
				{
					if (iOleInPlaceActiveObject->TranslateAccelerator(pMsg) == S_FALSE)
						::SendMessage(pMsg->hwnd,pMsg->message,pMsg->wParam,pMsg->lParam);
					iOleInPlaceActiveObject->Release();
				}
			}
			return TRUE;
		}
	}
	return CWnd::PreTranslateMessage(pMsg);
};
 



ps
В целях оптимизации iOleInPlaceActiveObject можно сделать членом класса
  

1&&2&&3
Наверх
 
IP записан
 
PVR
God Member
*****
Отсутствует



Сообщений: 622
Зарегистрирован: 19. Ноября 2007
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #298 - 05. Июня 2008 :: 17:03
Печать  
artbear, баг
Цитата:
[-] 3891 При включенной отладке 1С++ могла выдавать исключения при создании нормальных, синтаксически правильных классов

входит в сборку
Цитата:
05:13, 5 June 2008 496 KB 3889
?

Если да то, пожалуйста, перечисляй в Comment через запятую все баги.
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Тестирование 1cpp-icl (icpp)
Ответ #299 - 06. Июня 2008 :: 03:20
Печать  
Если бы входила, я бы сразу выложил сборку Улыбка
В news я написал, чтобы при выкладывании очередной сборки как раз не забыть упомянуть решенную проблему Улыбка
Скоро выложу.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Переключение на Главную Страницу Страницы: 1 ... 18 19 [20] 21 22 ... 46
ОтправитьПечать