Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
wtf!?
750 / 281 / 25
Регистрация: 21.05.2010
Сообщений: 732
1

Несколько вопросов

19.10.2011, 10:19. Показов 1348. Ответов 19
Метки нет (Все метки)

Всем привет, появилось пару вопросов.
1. Стандартно TGauge имеет вид типа [картинка 1], но это выглядит совсем не красиво. Можно ли нарисовать например градиент вместо монотонного черного? Если можно то как?
2. Как нарисовать TStringGrid по-красивее
3. Можно на форме фоном нарисовать градиент?
4. Как производить действия с несколькими выделенными строчками в StringGride?
Изображения
 
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.10.2011, 10:19
Ответы с готовыми решениями:

Несколько вопросов по билдеру
Вопрос 1. Есть компонент TMonthCalendar, на котором я выбираю нужную дату и месяц. Как мне...

Несколько вопросов о StringGrid
Здравствуйте. Имею несколько вопросов. Первый. Добавляю несколько строк - имен файлов из...

Несколько вопросов по работе с ADO
Помогите, пожалуйста! Возникло несколько вопросов в работе с БД: 1. База находится в одной...

Несколько вопросов!
Вопрос 1) Вот код поисковика. Когда я удаляю Name поля Edit1 при запуске прогамы выдает ошибку->...

19
287 / 228 / 27
Регистрация: 13.06.2010
Сообщений: 744
19.10.2011, 11:44 2
Цитата Сообщение от Flyer Посмотреть сообщение
3. Можно на форме фоном нарисовать градиент?
Вот пожалуйста, градиент по красному:
C++
1
2
3
4
5
6
7
8
9
void __fastcall TMainForm::Button1Click(TObject *Sender)
{
    int step = MainForm->ClientWidth / 255;
    int j = 0;
    for (int i = 0; i < ClientWidth; ++i, j+=step*2) {
        MainForm->Canvas->Brush->Color = RGB(i,0,0);
        MainForm->Canvas->FillRect(TRect(j,0,j+step*2,ClientHeight));
    }
}
Добавлено через 1 час 5 минут
Цитата Сообщение от Flyer Посмотреть сообщение
4. Как производить действия с несколькими выделенными строчками в StringGride?
Элементарно в цикле for(;;)
1
wtf!?
750 / 281 / 25
Регистрация: 21.05.2010
Сообщений: 732
19.10.2011, 14:39  [ТС] 3
я имел ввиду, как определить какие строчки выделены, с одной проблему нету, меня интересует именно если их несколько
0
287 / 228 / 27
Регистрация: 13.06.2010
Сообщений: 744
19.10.2011, 14:54 4
C++
1
2
3
4
StringGrid1->Selection.Left
StringGrid1->Selection.Right
StringGrid1->Selection.Top
StringGrid1->Selection.Bottom
1
wtf!?
750 / 281 / 25
Регистрация: 21.05.2010
Сообщений: 732
19.10.2011, 15:42  [ТС] 5
не то по моему
0
Практикантроп
4703 / 2614 / 506
Регистрация: 23.09.2011
Сообщений: 5,629
19.10.2011, 17:19 6
Цитата Сообщение от Flyer Посмотреть сообщение
не то по моему
- ... самое то. Selection.Top даёт номер начальной строки выделенного диапазона, а Selection.Bottom - номер последней строки. Попробуйте, для интереса.
1
wtf!?
750 / 281 / 25
Регистрация: 21.05.2010
Сообщений: 732
19.10.2011, 21:20  [ТС] 7
а не, таки то. Спасибо

Добавлено через 3 часа 46 минут
5. Есть ли функция подобная GetTempFileName(), но без создания файла? Просто генерирующая рандомную строчку из букв и цифр определенной/неопределенной длины
0
wtf!?
750 / 281 / 25
Регистрация: 21.05.2010
Сообщений: 732
25.10.2011, 01:34  [ТС] 8
Ну та знает кто нибудь, можно ли сделать фон гаужа примерно таким как во вложении?
Изображения
 
0
LK
Заблокирован
25.10.2011, 01:59 9
а картинку там влепить низзя?
0
wtf!?
750 / 281 / 25
Регистрация: 21.05.2010
Сообщений: 732
25.10.2011, 10:41  [ТС] 10
ну дык было б так просто, я б не спрашивал
0
LK
Заблокирован
25.10.2011, 17:24 11
если оно что-нибудь рисует, можно предположить, что там есть канва, если есть канва, можно пробовать влепить картинку, если канвы нет, ее можно тоже прилепить.
0
wtf!?
750 / 281 / 25
Регистрация: 21.05.2010
Сообщений: 732
25.10.2011, 18:33  [ТС] 12
примерчик?
канвы по-моему нема
0
LK
Заблокирован
25.10.2011, 21:57 13
як нема то не біда...
C++
1
2
3
4
5
6
7
8
9
TControlCanvas *MyCanvas;
void __fastcall TForm1::FormCreate(TObject *Sender)
{
  MyCanvas = new TControlCanvas;
  MyCanvas->Control = Gauge1;
// не забыть где нибудь
}
// delete MyCanvas;
// MyCanvas = NULL;
дальше сами в курсах:
C++
1
2
Graphics::TBitmam *bmp;
//...
не проверял
0
wtf!?
750 / 281 / 25
Регистрация: 21.05.2010
Сообщений: 732
25.10.2011, 23:08  [ТС] 14
C++
1
2
3
4
5
  MyCanvas = new TControlCanvas;
  MyCanvas->Control = Gauge1;
  TPngImage *okPNG = new TPngImage;
  okPNG->LoadFromFile("C:\\Users\\Flyer\\Desktop\\13.png");
  MyCanvas->Draw(0,0,okPNG);
Картинка перекрыла весь гауж. не гуд =/
0
LK
Заблокирован
25.10.2011, 23:29 15
дык, мы договаривались о выводе картинки , картинка, как я понимаю, появилась
0
wtf!?
750 / 281 / 25
Регистрация: 21.05.2010
Сообщений: 732
25.10.2011, 23:38  [ТС] 16
картинка должна быть фоном вместо чероного а не закрыть весь гауж
0
LK
Заблокирован
26.10.2011, 00:11 17
говорят, есть два варианта:
1. унаследовать класс гаужа и добавить отсебятину
2. вобче не использовать гауж, а на имаге или пейнтбоксе последовательно рисовать фон-прогресс-процент, используя таймер и каким-то образом рассчитав прогресс, он же процент.
0
wtf!?
750 / 281 / 25
Регистрация: 21.05.2010
Сообщений: 732
26.10.2011, 01:25  [ТС] 18
2 вариант мне чет совсем не нравится, а первый надо попробовать. никогда такого правда не далал. хелп мне в помощь

Добавлено через 57 минут
чет у меня не выходит инсталировать компоненты в рад =/
есть один компонент в виде файла dcu
и второй в виде pas + dcr. Что с ними делать и как их установить, чтоб они появились на палитре?
0
LK
Заблокирован
26.10.2011, 02:27 19
Components - New Package... в MainMenu, добавить pas .
Использование кода Delphi в C++Builder
0
wtf!?
750 / 281 / 25
Регистрация: 21.05.2010
Сообщений: 732
27.10.2011, 13:54  [ТС] 20
печально это как то. взял файл Vcl.Samples.Gauges (собственно сорс файл tgauge как я понял) из папочки сорс. Создал проект пака для дельфи, добавил юнит сей, скомпилил , инсталл. Пак установился но в нем компонента почему то нема
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.10.2011, 13:54

Сразу несколько вопросов.
Всем здравствуйте! 1. У меня компонент CCalendar. Необходимо, чтобы выборе мышью одной из его...

Несколько вопросов
Всем привет. Только недавно начал работать с виндоуз формами, и сразу появилось несколько вопросов,...

несколько вопросов
1 - как перезагрузить комп? пробовал ExitWindowsEx(с разными параметрами) и...

Несколько вопросов
Не уверен, что пишу куда следует, но все же... Получил задание по физике, почти все осилил, кроме...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru