Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.12.2011, 20:35   #1
xrenomx
Пользователь
 
Аватар для xrenomx
 
Регистрация: 05.02.2011
Сообщений: 63
По умолчанию Выделение границ компонента edit и таблица в listbox

Заранее извиняюсь что затрагиваю сразу 2 вопроса...

Хотелось бы сделать границы компонента edit - жирными как здесь:



Однако в BorderStyle ничего потходящего не нашел...

Так же хотелось бы в ListBox сделать таблицу как указано показано на картинке и заполнить ячейки нужным мне текстом...



Если же добавить таблицу невозможно - то хотябы вставить картинку в listbox с границами похожую на таблицу вместе с текстом...

Все попытки провалились...
xrenomx вне форума Ответить с цитированием
Старый 16.12.2011, 21:07   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Edit и StringGrid вместо ListBox. У Edit-а свойства BevelInner, BevelKind, BevelOuter.
Изображения
Тип файла: jpg Безымянный.jpg (66.2 Кб, 112 просмотров)
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 16.12.2011, 23:24   #3
xrenomx
Пользователь
 
Аватар для xrenomx
 
Регистрация: 05.02.2011
Сообщений: 63
По умолчанию

Во время заполнения таблицы границы не расширяются так,чтобы было всё видно...что в инспекторе задач за это отвечает?

И еще...заполнять таблицу можно только через код?в Option поставил Edit:=true но вносить изменения можно только после запуска проги,а хотелось бы заранее...

Можно было бы в обработчике OnCreate вписать отдельно для каждой ячейки размер,но такого обработчика там нет.

С предыдущими проблемами решился,возникла следующая:

В обработчике OnCreate самой формы вписываю
Код:
Stringgrid1.Cells[1,1]:='test';
Stringgrid1.Cells[1,2]:='ss';
Сам Stringgrid состоит из 1 столбца и 5 строк,но изменения в ячейки почему-то не вносятся...помогите.

Последний раз редактировалось artemavd; 17.12.2011 в 20:23.
xrenomx вне форума Ответить с цитированием
Старый 17.12.2011, 14:34   #4
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Читаем справку, нумерация строк и столбцов в гридах - от 0. Размеры ячеек задаются свойствами-массивами(по количеству столбцов и строк соответственно) ColWidths и RowHeights
phomm вне форума Ответить с цитированием
Старый 17.12.2011, 19:05   #5
xrenomx
Пользователь
 
Аватар для xrenomx
 
Регистрация: 05.02.2011
Сообщений: 63
По умолчанию

Цитата:
Сообщение от phomm Посмотреть сообщение
Читаем справку, нумерация строк и столбцов в гридах - от 0.
С делфийской справкой я не очень,поэтому инфу ищу просто в нете)
Но все же проблема не решилась...Stringgrid1.Cells[0,0]:='test' так же ничего не выводится,goEditing=true хотя он отвечает за изменения уже запущенной программы.
xrenomx вне форума Ответить с цитированием
Старый 17.12.2011, 20:25   #6
xrenomx
Пользователь
 
Аватар для xrenomx
 
Регистрация: 05.02.2011
Сообщений: 63
По умолчанию

DefaultDrawing был false так как хотелось бы,чтобы после запуска программы ячейка не выделялась...сейчас true...текст виден так как надо,но ячейка выделена,а каждый раз щелкать в свободную область чтобы выделение пропало - неудобно.

Как можно решить проблему?

Такой фокус не прокатил:

Код:
begin
   StringGrid1.DefaultDrawing:=true;
    StringGrid1.Cells[0,0]:='0';
      StringGrid1.DefaultDrawing:=false;
end;
xrenomx вне форума Ответить с цитированием
Старый 17.12.2011, 23:09   #7
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Selection установите в неугловую ячейку, но если вы всю таблицу заполняете, то одна ячейка всё равно будет выделена.
phomm вне форума Ответить с цитированием
Старый 17.12.2011, 23:35   #8
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

DefaultDrawing в False и в OnDrawCell прорисовывать ручками хоть с выделением, хоть без выделения
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 18.12.2011, 01:16   #9
xrenomx
Пользователь
 
Аватар для xrenomx
 
Регистрация: 05.02.2011
Сообщений: 63
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
DefaultDrawing в False и в OnDrawCell прорисовывать ручками хоть с выделением, хоть без выделения
Спасибо,получилось,правда у меня в Font текст стоит жирным,а в действительности он не выделен жирным оттенком...
Я так понял нужно копать в сторону Canvas.Font. но что то я там затерялся...

Последний раз редактировалось xrenomx; 18.12.2011 в 01:21.
xrenomx вне форума Ответить с цитированием
Старый 18.12.2011, 01:18   #10
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

В прорисовке фонтом канвы можно управлять как угодно
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C++ Builder выделение текста в Edit Karina89 Помощь студентам 2 15.10.2011 17:30
listbox. Проверка на выделение. Алекс Миско C# (си шарп) 12 02.03.2011 10:01
ListBox выделение левой кнопкой пауэрлифтинг Общие вопросы Delphi 6 07.03.2010 23:52
таблица в ListBox Screame Microsoft Office Excel 3 14.10.2009 20:11
Выделение в ListBox по правому клику mutabor Общие вопросы Delphi 4 01.10.2007 22:33