Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Использование DevExpress (часть 4)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342

Открыть новую тему     Написать ответ в эту тему

ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DevExpress

Обмен опытом, обсуждение нюансов и решение проблем возникающих при использовании библиотеки компонент Developer Express




 
DLL со скинами из библиотеки dxSkins, автор Ziltoid Подробнее... линк обновлен
Продолжение, Первая часть, вторая часть, третья часть

Полезные утилиты:
DxAutoInstaller v2.1.10 Простой и удобный тул для установки девок из исходников
https://mega.nz/#!aJRQzSqI!N7RgfcG1tfF45Z3OgcmBDHT_ZcWlIgJQ5eHHgQ9VupE

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 04:48 31-12-2009 | Исправлено: G787, 21:12 29-07-2018
ChSerg



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sufferer

Цитата:
на кой ляд там свойство ID

В TdxCustomTokenEdit нет свойства ID.

Всего записей: 936 | Зарегистр. 30-08-2001 | Отправлено: 08:56 13-10-2018
Sufferer



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А вот в TdxTokenEditToken, из которых собственно и собирается все это счастье, имеется.  
ПС: Дошло до меня как реализовать то что мне надо. Код элемента это свойство Text, а вот его представление это DisplayText. Все встало на свои места, а то я никак не мог понять в каком виде собственно итог работы компонента получится. А получится он как текстовая строка кодов с разделителями.

Всего записей: 271 | Зарегистр. 21-07-2001 | Отправлено: 11:10 13-10-2018
ChSerg



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
в TdxTokenEditToken тоже нету никакого ID:
 
TdxTokenEditToken = class(TcxButtonGroupItem)
  strict private
    FGlyph: TdxSmartGlyph;
    FHint: string;
    FImageIndex: TcxImageIndex;
    FText: string;
 
    function GetDisplayText: string;
    procedure SetDisplayText(const Value: string);
    procedure SetGlyph(const Value: TdxSmartGlyph);
    procedure SetHint(const Value: string);
    procedure SetImageIndex(const Value: TcxImageIndex);
    procedure SetText(const Value: string);
  protected
    procedure Changed; virtual;
    function GetDisplayName: string; override;
    procedure GlyphChangeHandler(Sender: TObject); virtual;
  public
    constructor Create(Collection: TCollection); override;
    destructor Destroy; override;
    procedure Assign(Source: TPersistent); override;
  published
    property DisplayText: string read GetDisplayText write SetDisplayText;
    property Glyph: TdxSmartGlyph read FGlyph write SetGlyph;
    property Hint: string read FHint write SetHint;
    property ImageIndex: TcxImageIndex read FImageIndex write SetImageIndex default -1;
    property Text: string read FText write SetText;
    property Tag;
  end;
 
 

Всего записей: 936 | Зарегистр. 30-08-2001 | Отправлено: 14:24 13-10-2018
Sufferer



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ID - видишь?  
Нет.  
А он есть.  
https://ru.files.fm/u/2rkgvwa8
 

Всего записей: 271 | Зарегистр. 21-07-2001 | Отправлено: 21:35 13-10-2018 | Исправлено: Sufferer, 21:35 13-10-2018
ChSerg



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sufferer
Так этот ID унаследован от TCollectionItem, который находится в стандартной VCL и там же можно посмотреть его описание:
 
A unique, permanent index for the item.  
 
In most cases, ID is the value of the item's Index property when it was first added to the collection. But, unlike Index values, ID values are never changed or reassigned. If an item is removed from a collection, its ID not used again.  
 
An item's Index may change when other items are deleted from the collection or when items are rearranged. ID provides a unique identifier for each item that is unchanged for the life of the collection.  
 

Всего записей: 936 | Зарегистр. 30-08-2001 | Отправлено: 00:45 14-10-2018
Sufferer



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Собственно мне уже он не нужен. Зато вот другая непонятка образовалась с этим TokenEditorom. А собственно как работать с такой вот итоговой строкой в БД? Она же содержит перечисление кодов через разделитель. Простейший запрос на получение всех записей, содержащих нужный код уже вызывает недоумение. Даже в гриде фильтр на колонку по такому полю не активируется.  

Всего записей: 271 | Зарегистр. 21-07-2001 | Отправлено: 21:18 14-10-2018
ChSerg



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
уже вызывает недоумение

Все очень просто. Запрашиваете так:
select * from tbl where rec_id in (id1,id2,id3,...) order by rec_id
id1,id2,id3,... - это и есть список кодов.

Всего записей: 936 | Зарегистр. 30-08-2001 | Отправлено: 00:15 15-10-2018
Sufferer



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Э нет, в том то и засада, что коды хранятся в одном поле, просто как текстовая строка с разделителями например 1;2;3

Всего записей: 271 | Зарегистр. 21-07-2001 | Отправлено: 11:59 15-10-2018
ChSerg



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sufferer
Я что-то непонятно написал?  
id1,id2,id3 - это и есть ваша строка кодов с разделителями (1;2;3), замените только разделитель на запятую.

Всего записей: 936 | Зарегистр. 30-08-2001 | Отправлено: 15:31 15-10-2018 | Исправлено: ChSerg, 15:32 15-10-2018
Sufferer



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Или я чего-то не понимаю или одно из двух. SQL конструкция in (id1,id2,id3,...) предполагает в скобках набор ОТДЕЛЬНЫХ элементов, а у меня ОДИН элемент - строка. Нельзя выполнить запрос вида:

Код:
 
select * from Dictionary where ID in ('128,132,141,154,199,146,139')
 

А TokenEdit именно в таком формате работает с элементами.
Единственный вариант, который будет работать с такими данными это формировать динамически текст запроса, куда можно как строку внедрить такой элемент:
'select * from Dictionfry where ID in (' + '128,132,141,154,199,146,139' + ')';
Видимо вы об этом мне пытались сказать.  

Всего записей: 271 | Зарегистр. 21-07-2001 | Отправлено: 20:10 16-10-2018 | Исправлено: Sufferer, 20:11 16-10-2018
ChSerg



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sufferer
Ну, конечно же! Именно об этом!!!
Можно использовать строковый параметр или макро (если используете FireDAC).

Всего записей: 936 | Зарегистр. 30-08-2001 | Отправлено: 22:40 16-10-2018 | Исправлено: ChSerg, 22:41 16-10-2018
safon777

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите пожалуйста, в TdxNavBar можно как-то сделать чтобы Item по которому кликнули оставался выделенным каким-то образом ?
Первое что приходит в голову подменять стили в коде, но это геморройно. Неужели нет простого способа ?

Всего записей: 2 | Зарегистр. 21-06-2008 | Отправлено: 10:37 18-10-2018
Sufferer



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну а как вы хотите, элемент получает фокус и получает соответствующий стиль. Теряет, тоже получает свой стиль. Одновременно два элемента в фокусе быть не могут - вот и получается, что для элемента в фокусе и без оного надо использовать одинаковые стили. Для уменьшения кода, можно сделать два набора стилей, один для навбара в фокусе, а второй без. Переключение наборов стилей по потере/получению фокуса в пару строк выходит.

Всего записей: 271 | Зарегистр. 21-07-2001 | Отправлено: 20:00 18-10-2018
ChSerg



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
оставался выделенным каким-то образом

Как-то так, наверное:
 
procedure TForm2.dxNavBar1OnCustomDrawLink(Sender: TObject; ACanvas: TCanvas;
  AViewInfo: TdxNavBarLinkViewInfo; var AHandled: Boolean);
begin
  if AViewInfo.Link.Selected then
  begin
    ACanvas.Brush.Color := clRed;
    ACanvas.FillRect(AViewInfo.Rect);
  end;
end;

Всего записей: 936 | Зарегистр. 30-08-2001 | Отправлено: 23:26 18-10-2018
Sufferer



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Если есть возможность, проверьте на более свежих девках фильтрацию в гриде по TokenEdit. У меня она для этого типа поля напрочь отсутствует.

Всего записей: 271 | Зарегистр. 21-07-2001 | Отправлено: 13:20 19-10-2018
yuiop0

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Помогите, пожалуйста, по Geo Point Maps в Dashboard.  
Каким образом подготовить географические данные для показа на картах?  
Имеется таблица, в которой для каждой записи в определенном формате указана страна (3 буквы из названия мобильных операторов). В примерах для Geo Point Maps используются данные координат (широта, долгота). В моем случае таких данных нет. Теоретически, можно сделать таблицу с координатами каждой столицы, и использовать их в качестве координат страны, но как-то это очень трудоемко и криво... Есть ли готовые инструменты для подстановки названий стран в карты? Попадались упоминания на 2х буквенные коды, но ни списка кодов, ни примеров найти не могу. Посоветуйте, пожалуйста, куда двигаться для решения вопроса
 
 

Всего записей: 18 | Зарегистр. 13-07-2008 | Отправлено: 09:16 23-10-2018 | Исправлено: yuiop0, 09:17 23-10-2018
ChSerg



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
yuiop0
Вот это смотрели: https://www.youtube.com/watch?v=ZZhJBN8Cvtg ?

Всего записей: 936 | Зарегистр. 30-08-2001 | Отправлено: 10:46 23-10-2018 | Исправлено: ChSerg, 10:46 23-10-2018
yuiop0

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Вот это смотрели: https://www.youtube.com/watch?v=ZZhJBN8Cvtg  

 
Да, смотрел. Там для карты используются Latitude/Longitude. Есть там и страна, но не понятно, в каком виде она задается, и без Широты/долготы это все равно не работает... Ладно, я нашел таблицу с координатами стран, методом втыка подобрал вариант перекодировки - вопрос снят.
 
Теперь уперся в другую проблему.
 
Общая задача - прикрутить Dashboard к имеющемуся приложению VB.NET WinForms (основной код приложения модифицировать для Dashboard крайне нежелательно на данном этапе, т.к. это пилотный проект). Данные для Дашбоарда берутся из одной таблицы Oracle, но эта таблица может быть разная (зависит от опций симуляции). Сам Дашбоард собирается в дизайнере (приложение DashboardDesigner) и подключается через XML в приложение через DashboardViewer. Тут, собственно, и возникает ограничение, связанное с изменениями исходной таблицы. Плюс, каждая симуляция обновляет табличные данные, т.е. перед отрисовкой требуется обновлять DataSource (formDash.DashboardViewer1.ReloadData()). Текущая идея реализации - после окончания расчётов выгружать данные таблицы в файл и использовать его в качестве DataSource для Дашбоарда. С CSV-файлами схема работает (меняю файл, перегружаю данные - дашбоард обновляется). С dashboardExtractDataSource1, к сожалению, такой фокус не работает - DashboardViewer держит файл открытым и не дает обновлять содержимое.
 
Соответственно, большая просьба - помогите с примером на VB для выгрузки DashboardSqlDataSource в CSV-файл. Нашел несколько похожих примеров на C#, но напрямую перенести на VB.NET не могу (не хватает квалификации). Или, хотя бы киньте идею, как получить табличные данные (строки) в коде VB

Всего записей: 18 | Зарегистр. 13-07-2008 | Отправлено: 10:10 24-10-2018 | Исправлено: yuiop0, 10:26 24-10-2018
Sufferer



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Хотелось бы отображать картинку по умолчанию для TcxDBImage если картинка не задана в базе, но пока решения не нашел, может кто уже сталкивался с такой проблемой?

Всего записей: 271 | Зарегистр. 21-07-2001 | Отправлено: 00:28 03-11-2018 | Исправлено: Sufferer, 13:06 03-11-2018
uranic2

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как сохранить настройки всех Summary в файл? Например в JSON?

Всего записей: 297 | Зарегистр. 17-08-2004 | Отправлено: 15:00 07-11-2018
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Использование DevExpress (часть 4)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru