Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > DriveComboBox1.update;


Автор: Frikazoid 23.6.2002, 00:46
Помогите мне плз!!!
У меня проблема с онавлением DriveComboBox1.
DriveComboBox1.update; не помогает!!!

Автор: Baa 23.6.2002, 01:33
А что ты с ним делаешь, что обновлять надо?

Автор: Song 23.6.2002, 09:56
Если нужно обновить визуальный эффект то это можно добиться через Update и Invalidate либо RePaint

Автор: Frikazoid 23.6.2002, 10:33
Обновить список дисков нужно!

Автор: Vit 25.6.2002, 06:23
Боюсь что стандартный это делать не захочет :(
Я бы его сам написал (из комбобокса)

Автор: Frikazoid 25.6.2002, 16:12
Я эту проблему решил!
Я создаю в процессе выполнения проги ещё один DriveComboBox1 и работаю с ним.

Автор: Vit 25.6.2002, 16:55
Я думал об этом как о варианте - разрушать/создавать - только некрасиво это. Надо или самому написать, а еще лучше посмотреть в исходники VCL, наследовать свой компонент и реализовать Update заново с учетом возможной смены числа и названий дисков...

Автор: Frikazoid 26.6.2002, 01:00
Да, только муторно всё это! Если напишешь чегото, то не откажусь :)

Автор: Vit 26.6.2002, 01:49
Нет, я писать не буду - только это не муторно, а просто другой уровень программирования, истинно объектное программимрование, когда ты вместо кода пишешь свою иерархию классов, а код программы составляет только несколько строк кода который связывает классы воедино. Именно так и пишутся большинство крупных проектов. Просто, ты видимо еще не готов к такому подходу и на Дельфи работаешь как на вижуал-васике...

Автор: Frikazoid 26.6.2002, 17:15
Да, что с меня взять? Я в паскале 5 лет, а в дельфи всего пол года!!! К томуже я за компом не весь день, а только ночью!!! Да и интернет ограничен. Не могу же я просто с потолка взять такие вещи как создание собственного класссса и тому подобных! :mmm  Если бы ты мне помог разобраться, то может я бы и перешёл бы на "другой уровень". А так я просто без "наворотов" програмить буду!   :sneaky2

ЗЫ Я про Васик забыл в классе шестом и перешёл на паскаль!

Автор: Vit 26.6.2002, 21:15
Да нет там ничего сложного... Написание классов немного отлично от принятого в turbo pascal, но с 5тью годами опыта на  turbo pascal это не должно быть проблемой - отличия правда не велики. Где-то здесь я уже приводил в конфе пример написания собственного класса...

Автор: Mikel 26.6.2002, 21:30
Цитата(Vit @ 25.6.2002, 17:55)
а еще лучше посмотреть в исходники VCL

а точнее что там в create написано.

Автор: Frikazoid 26.6.2002, 22:31
Да! 5 лет, но на каком уровне! Я же всё это в школе проходил. Конечно я не сортировкой одномерной матрици занимался(работал с 3d[низкий уровень и качество]), а про классы я и не задумывался! Конечно ничего сложного нет в создании класса. Но для создания толковой вещи нужен опыт!

Автор: Frikazoid 27.6.2002, 01:12
Вот я и надыбал ответ!
Достал из FAQ c одного сайта!

type
 TNewDriveComboBox = class(TDriveComboBox)  //это наш "class cracer"
end;

procedure TForm1.Button1Click(Sender: TObject);
var
 Drive : char;
begin
 Drive := DriveComboBox1.Drive;
 TNewDriveComboBox(DriveComboBox1).BuildList;  
     //вызываем защищенный метод родительского класса
 DriveComboBox1.Drive := Drive;
end;

Тока я не проверял ещё!

Автор: Vit 27.6.2002, 03:37
Ха! Вот это именно то что я говорил - ты здесь наследуешь класс и обращаешся к Protected методам потомка. Только написано немного не очевидно но смысл тот же.

Автор: Spawn 27.6.2002, 10:05
Цитата(Frikazoid @ 26.6.2002, 18:15)
Да, что с меня взять? Я в паскале 5 лет, а в дельфи всего пол года!!! К томуже я за компом не весь день, а только ночью!!! Да и интернет ограничен. Не могу же я просто с потолка взять такие вещи как создание собственного класссса и тому подобных! :mmm  Если бы ты мне помог разобраться, то может я бы и перешёл бы на "другой уровень". А так я просто без "наворотов" програмить буду!   :sneaky2

ЗЫ Я про Васик забыл в классе шестом и перешёл на паскаль!

А я вообще только 1 месяц занимаюсь Делфи и ни чем раньше (настолько увлекло, что бывает и по 10 часов в день, но в основном по 5 :) )
Если бы я раньше начал заниматься программированием .то может сейчас бы делал уже какие нить продвинутые проги  :(

Автор: Frikazoid 27.6.2002, 10:36
Вот именно, всё уперается в время! У меня его не много! А когда я чем-то увлечён, то сижу до 4 ночи!

Автор: Frikazoid 27.6.2002, 10:43
Vit. Рас это всё так просто, почему ты просто не написал, а начал тут про новый уровень? Ведь написать нужно бело всего пару строк! И мы бы тут не разводили флейма!
:rolleyes   :rolleyes  :rolleyes  :rolleyes  :rolleyes  :rolleyes  :rolleyes  :rolleyes  :rolleyes  :rolleyes  :rolleyes  :rolleyes  :rolleyes  :rolleyes

Автор: Vit 27.6.2002, 14:08
Цитата(Frikazoid @ 27.6.2002, 02:43)
Vit. Рас это всё так просто, почему ты просто не написал, а начал тут про новый уровень? Ведь написать нужно бело всего пару строк! И мы бы тут не разводили флейма!

Я же не знал этого решения! Я тебе подсказал где искать. По поводу наследования классов - зашел разговор, ты сказал что это трудно, а затем привел пример с его использованием :)
Наследование классов - это технология, а конкретная реализация дело другое, конкретной реализации твоего случая я не знал, просто знал где искать и в каком направлении идти.


Я не волшебник - я только учусь!


Автор: Frikazoid 27.6.2002, 17:58
Так ведь не я это написал!!! Я просто поискал!!! Но для меня это в новинку!!!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)