 |
Вот такая задача - Общение разработчиков - Программирование для Point Blank, общение и обсуждение разработок |
25.09.2013, 20:01
|
#1
|
|
|
|
Разведчик
|
 Регистрация: 16.11.2012
 Сообщений: 21
 Популярность: 1445
 Сказал(а) спасибо: 26
Поблагодарили 24 раз(а) в 13 сообщениях
|
Вот такая задача
void GroupBox(float x,float y,float w,float h,char* Text,int Vsego_simbol, D3DCOLOR Color,LPDIRECT3DDEVICE9 pDevice,LPD3DXFONT pFont,int Number)
{
int simbol = 7;
float X = w+(simbol*Vsego_simbol)/5;
float W = x+(simbol*Vsego_simbol);
DrawText(Text,x+10,y-6,WHITE,pFont,DT_LEFT|DT_NOCLIP);
DrawBox(X, y,W, Number,Color,pDevice);//Up1
//DrawBox(x*(simbol*vs_simbol)+2, y, w, Number,Color,pDevice);//Up2
DrawBox(x, y+Number, Number, h-Number,Color,pDevice);//Левая
DrawBox(x,y+h, w, Number,Color,pDevice);//Нижняя
DrawBox(x+w,y, Number,h+Number,Color,pDevice);//Right
}
Вот такой вот код,я думаю некоторые уже догадались,что я хочу сделать.
Так вот,вопрос состоит в том,чтобы верхняя полоска отодвигалась(уменьшалась в длинне) вправо(или же прибавлялась влево),в зависимости от кол-ва букв,в груп боксе.
*
int simbol = 7; - Это Размер,который символ занимает.
int Vsego_simbol - Это кол-во символов в названии груп бокса.
//DrawBox(x*(simbol*vs_simbol)+2, y, w, Number,Color,pDevice);//Up2 - Это левая верхняя часть груп брокса(Угловая).
Это мои вычисления :
float X = w+(simbol*Vsego_simbol)/5;
float W = x+(simbol*Vsego_simbol);
|
|
|
27.09.2013, 13:33
|
#2
|
|
|
|
Старший сержант
|
 Регистрация: 04.02.2011
 Сообщений: 198
 Популярность: 12244
 Сказал(а) спасибо: 453
Поблагодарили 435 раз(а) в 242 сообщениях
|
Re: Вот такая задача
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Так вот,вопрос состоит в том,чтобы верхняя полоска отодвигалась(уменьшалась в длинне) вправо(или же прибавлялась влево),в зависимости от кол-ва букв,в груп боксе
|
|
 |
|
 |
|
Код:
int cDraw::TextLen(LPCTSTR szString)
{
RECT rect = {0,0,0,0};
pFont->DrawText(NULL, szString, -1, &rect, DT_CALCRECT, 0);
return rect.right;
}
Хватит ума понять как это работает и что это вообще такое?
________________
-Отложи на послезавтра то что можешь сделать сегодня, и тогда у тебя появятся два свободных дня!
|
|
|
2 пользователя(ей) сказали cпасибо:
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Похожие темы
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
[Обсуждение] Задача
|
костик123 |
Треп |
5 |
05.10.2011 14:29 |
Задачка на С =/
|
HellFire |
Вопросы и ответы, обсуждения |
2 |
18.12.2009 14:08 |
Заявление об ответственности / Список мошенников
Часовой пояс GMT +4, время: 09:16.
|
 |