Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: renderText внутри списка
Форум на CrossPlatform.RU > Разработка > С\С++
KuvshinoF
 flag_1 = true;
flag_2 = true;

::paintGL()
{

func_1();
func_2();
….

flag_1 = false;
flag_2 = false;
}
//----------------------------------------------------------------------------

func_1():
{
  if (flag_1)
  {
    if (glIsList(1))
     glDeleteLists(1, 1);
    glNewList(1, GL_COMPILE_AND_EXECUTE);
    glPushAttrib(GL_CURRENT_BIT);
    
    renderText(100, 150, 0, "myText");
    
    glPopAttrib();
    glEndList();
  }
  else
    glCallList(1);
}
//----------------------------------------------------------------------------

func_2():
{
  if (flag_2)
  {
    if (glIsList(2))
     glDeleteLists(2, 1);
    glNewList(2, GL_COMPILE_AND_EXECUTE);
    glPushAttrib(GL_CURRENT_BIT);
    
    renderText(300, 250, 0, trUtf8("#") + QString::number(iValue));
    
    glPopAttrib();
    glEndList();
  }
  else
    glCallList(2);
}
//----------------------------------------------------------------------------

ButtonOnClick:
{
   iValue = 55;
   flag_2 = true;

   updateGL();
}

После онклика кнопки результатом func_2 будет вывод строки "55", а не "#55"... почему так происходит (то есть теряется часть (???) строки (символ "#"))? Если закомментировать renderText в func_1(), то func_2 сработает правильно ("#55")...Также будет верный ответ, если в обоих функциях отказаться от дисплейных списков, но этого не хотелось бы делать
Алексей1153
а если так

renderText(300, 250, 0, QString("#%1").arg(iValue));


KuvshinoF
Алексей1153: я еще не пробовал, но чувствуется, что эффект будет такой же, так как пробовал вывести строку "N#1", а получил "1"... то есть такое чувство, что остаются только цифры...тогда вообще непонятно как так может быть...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.