Здравствуйте.
Ситуация следующая.
Рисую метку с помощью команды SetLabel.
Подскажите, какая максимально допустимая длина выводимого в метку текста. Просто столкнулась с ситуацией, что при определенной длине текста в метке приложение перестает функционировать.
И еще небольшой вопрос.
Вывожу метку с текстом в несколько строк (использую внутри метки перевод строки).
Хочу вывести одну менту строго под другой не всегда получается, либо наезжаю, либо большой интервал, о хотелось бы что бы смотрелось как единое целое. В одной метке вывести не могу потому как метки вывожу размыми цветами.
Может есть какая нибудь альтернатива того фрагмента который используется мною:
WideString text;
AnsiString str1 = "метка1\\nметка1\\nметка1";
AnsiString str2 = "метка2\\nметка2";
size = style->get_TextHeight()/MapCtrl1->MapScale;
textheight = style->get_TextHeight();
//Первая метка
text = "{\\c"+IntToStr(12632256)+"\\s"+FloatToStr(size)+"}"+ str1;
MapCtrl1->SetLabel(DrawHandle, new_X, new_Y, 0, 0, text, 0, 0, eSouthEast);
//Вторая метка
text = "{\\c"+IntToStr(255)+"\\s"+FloatToStr(size)+"}"+ str2;
MapCtrl1->SetLabel(DrawHandle, new_X - textheight * 3 , new_Y, 0, 0, text, 0, 0, eSouthEast); // 3 - это три строки в метке
//new_X и new_Y коотдинаты левого верхнего угла первой метки
Ситуация следующая.
Рисую метку с помощью команды SetLabel.
Подскажите, какая максимально допустимая длина выводимого в метку текста. Просто столкнулась с ситуацией, что при определенной длине текста в метке приложение перестает функционировать.
И еще небольшой вопрос.
Вывожу метку с текстом в несколько строк (использую внутри метки перевод строки).
Хочу вывести одну менту строго под другой не всегда получается, либо наезжаю, либо большой интервал, о хотелось бы что бы смотрелось как единое целое. В одной метке вывести не могу потому как метки вывожу размыми цветами.
Может есть какая нибудь альтернатива того фрагмента который используется мною:
WideString text;
AnsiString str1 = "метка1\\nметка1\\nметка1";
AnsiString str2 = "метка2\\nметка2";
size = style->get_TextHeight()/MapCtrl1->MapScale;
textheight = style->get_TextHeight();
//Первая метка
text = "{\\c"+IntToStr(12632256)+"\\s"+FloatToStr(size)+"}"+ str1;
MapCtrl1->SetLabel(DrawHandle, new_X, new_Y, 0, 0, text, 0, 0, eSouthEast);
//Вторая метка
text = "{\\c"+IntToStr(255)+"\\s"+FloatToStr(size)+"}"+ str2;
MapCtrl1->SetLabel(DrawHandle, new_X - textheight * 3 , new_Y, 0, 0, text, 0, 0, eSouthEast); // 3 - это три строки в метке
//new_X и new_Y коотдинаты левого верхнего угла первой метки