Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.08.08;
Скачать: [xml.tar.bz2];

Вниз

как заменить txfxfButton на кнопку   Найти похожие ветки 

 
maxim_m_m   (2004-07-27 16:12) [0]

Здравствуйте!
В старом проекте использовал какой-то левый кнопочный компонент
и теперь я не могу редактировать программу, форма не создаётся. dfm в каком-то ужасном нечитабельном виде(раньше я мог редактрировать dfm) что-то вроде utf-8
простой заменой tfxfxbtn на tbutton мне не отделаться. какие будут предложения?


 
Юрий Зотов ©   (2004-07-27 16:33) [1]

Обычно для этого пишется программа, которая парсит dfm, меняет в нем имя класса, убирает несовпадающие свойства и добавляет нужные.

Замену имени класса в файлах .pas можно сделать и уже готовыми программами (например, UltraEdit). А если свойства нового и старого классов полностью аналогичны, то и dfm тоже можно исправить уже готовой программой.


 
maxim_m_m   (2004-07-27 18:54) [2]

спасибо за ответ!
но я уже пробовал менять в dfm файлах на tbutton,
но после этого Delphi говорит что в dfm файле ошибка (invalid stream format).
так что это спасает только тогда, когда dfm имеет красивый вид, вроде:
object Form1: TForm1
 Left = 148
 Top = 187
 Width = 544
 Height = 356
 Caption = "Form1"
 Color = clBtnFace
 Font.Charset = DEFAULT_CHARSET
 Font.Color = clWindowText
 Font.Height = -11
 Font.Name = "MS Sans Serif"
 Font.Style = []
 OldCreateOrder = False
 PixelsPerInch = 96
 TextHeight = 13
 object Button1: TButton
   Left = 16
   Top = 8
   Width = 75
   Height = 25
   Caption = "Button1"
   TabOrder = 0
   OnClick = Button1Click
 end
 object Memo1: TMemo
   Left = 40
   Top = 112
   Width = 425
   Height = 217
   Lines.Strings = (
     "Memo1")
   TabOrder = 1
 end
end
тогда можно заменить методов find and replace.

Но большие dfm"ы delphi портит,
и превращает их во что-то бинарное,
(..IN наверно = BIN)
и едва-читабельное только в формате  UTF-8:

�IN 0` TPF0TMainMainTagLeft��h(HeightDAlphaBlendValueƠCaptionMainColor clSkyBlue
ParentFont OldCreateOrder PositionpoScreenCenterVisible WindowState wsMaximizedOnClose FormCloseOnCreate
FormCreate OnDestroy FormDestroy
PixelsPerInch`
TextHeight
TBevelBevel2LeftTop)WidthgHeight&  TBevelBevel3LeftOTopRWidth— Height&  TLabelLabel31Left Top7WidthMHeight
Caption   Дата записи ->  TLabelLabel30Left· Top7WidthiHeight
Caption"   Дата поступления ->  TLabelLabel28Left TopNWidth<Height
Caption   Номер акта  TLabelLabel17Left Top&#65533;WidthAHeight
Caption   !>E@0==>ABL  TLabelLabel27Left&#55171;TopxWidthsHeight
Caption"   Источник поступления  TLabelLabel34Left TopxWidth&#175; Height
Caption;   Материал и техника изготовления  TLabelLabel1Left TopfWidthHeight
Caption   2B>@  TLabelLabel2Left Top­ WidthGHeight
Caption   Тип предмета  TLabelLabel3Left Top&#224;WidthPHeight
Caption...............


 
ЮЮ ©   (2004-07-28 02:58) [3]

>Но большие dfm"ы delphi портит

Просто существует два формата хранения dfm - текстовый и бинарный. Ты сейчас столкнулся с бинарным.


 
Athlon XP   (2004-07-28 03:30) [4]

В IDE в редакторе кода правую нажми, и в меню выбери что-то вроде "view as text" - появится нормальный исходник формы. Его скопирую и слей в текстовик. Проект выгрузи, и тот текстовик переименуй в DFM. Только старый (бинарный) сохрани... Я сам не пробовал, но должно работать :)

---
Intel Inside - Idiot Outside


 
maxim_m_m   (2004-07-28 11:34) [5]

to:[4]
Если бы форма открывалась, вопроса бы не было.


 
Рамиль ©   (2004-07-28 12:24) [6]


> [5] maxim_m_m   (28.07.04 11:34)

В папке BIN есть утилитка convert.exe - преобразует из бинарного формата в текстовый и обратно.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.08.08;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.037 c
14-1090393004
Nikolay M.
2004-07-21 10:56
2004.08.08
Тренажеры для печати вслепую


14-1090263886
Baron
2004-07-19 23:04
2004.08.08
Слово о сидюке.


1-1090479966
Lamer_Of_Delphi
2004-07-22 11:06
2004.08.08
Интерпретатор


3-1089624467
Koala
2004-07-12 13:27
2004.08.08
Помогите с запросом


4-1088159210
Stager
2004-06-25 14:26
2004.08.08
Всплывающая подсказка из трея





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский