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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.02.2012, 14:39   #1
munthrekosh
Пользователь
 
Аватар для munthrekosh
 
Регистрация: 12.11.2011
Сообщений: 80
Лампочка ActionToolBar и раскрывающийся список. Позиция курсора. Имя файла. (Delphi 7)

  1. Нужно сделать раскрывающийся список на ActionToolBar примерно как здесь :
    .
    Порыскал в иннете, почитал справку, помурыжил вкладки компонентов, но ничего путного не нашёл... Так что вся надежда на вас форумчане.
  2. Требуется вывести позицию курсора из RichEdit на StatusBar. Написал код
    Код:
    StatusBar1.Panels[1].text:=IntToStr(RichEdit1.CaretPos.Y+1)+' : '+IntToStr(RichEdit1.CaretPos.X+1);
    . И накинул его на
    Код:
    procedure TForm1.Timer1Timer(Sender: TObject);
    . Всё работает, но мне не нравится. Может кто знает событие получше?
  3. Необходимо вывести имя файла в Form.Caption. При не сохраненном и не загруженном файле должно быть "Безымянный". А иначе имя загруженного\сохраненного файла. Написал следующее:
    Код:
    procedure TForm1.FileOpen1Accept(Sender: TObject);
    begin
      RichEdit1.Lines.LoadFromFile(FileOpen1.Dialog.FileName);
      Form1.Caption:=FileOpen1.Dialog.FileName;
    end;
    
    procedure TForm1.FileSaveAs1Accept(Sender: TObject);
    begin
      RichEdit1.Lines.SaveToFile(FileSaveAs1.Dialog.FileName);
      Form1.Caption:=FileSaveAs1.Dialog.FileName;
    end;
    
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      Form1.Caption:='Безымянный';
    end;
    .
    Работает, но при использовании FileSaveAs1.Dialog.FileName и FileOpen1.Dialog.FileName, выводится полное имя файла (путь+имя), а мне не нужно что бы отображался путь. Как это исправить?
Ш.Р.Ю.-программист! йопта!!!
munthrekosh вне форума Ответить с цитированием
Старый 27.02.2012, 14:42   #2
denisbrain
Форумчанин
 
Регистрация: 29.05.2011
Сообщений: 449
Радость

Цитата:
Сообщение от munthrekosh Посмотреть сообщение
  1. Работает, но при использовании FileSaveAs1.Dialog.FileName и FileOpen1.Dialog.FileName, выводится полное имя файла (путь+имя), а мне не нужно что бы отображался путь. Как это исправить?

2.
StatusBar1.Panels[1].text:=IntToStr(RichEdit1.CaretPos. Y+1)+' : '+IntToStr(RichEdit1.CaretPos.X+1);
воткни его в
RichEdit1Change
RichEdit1KeyDown
RichEdit1MouseDown

3.

Код:
var
  fullFileName : string;

begin
  // Установка полного имени файла с диском и путем
  fullFileName := 'C:\Program Files\Borland\Delphi7\Projects\Unit1.dcu';

  // Показ составляющих частей этого полного имени
  ShowMessage('Диск       = '+ExtractFileDrive (fullFileName));
  ShowMessage('Каталог    = '+ExtractFileDir   (fullFileName));
  ShowMessage('Путь       = '+ExtractFilePath  (fullFileName));
  ShowMessage('Имя        = '+ExtractFileName  (fullFileName));
  ShowMessage('Расширение = '+ExtractFileExt   (fullFileName));
end;
// как вариант  имя файла без расширения 

Function GetFileNameC(s:string):string;
  var s2,s1:string;
  x:integer;
begin
  s2:='';
  s1:=ExtractFileName(s);
  for x:=1 to length(s1) do begin
    if s1[x]='.' then begin result:=s2; exit; end
    else s2:=s2+s1[x];
  end;
end;
задания на pascal/delphi ICQ 368254335
Tel +79177425326 mail denis-naymov1985(at)mail.ru login skype denis.new.skype

Последний раз редактировалось denisbrain; 27.02.2012 в 14:53.
denisbrain вне форума Ответить с цитированием
Старый 27.02.2012, 14:49   #3
munthrekosh
Пользователь
 
Аватар для munthrekosh
 
Регистрация: 12.11.2011
Сообщений: 80
По умолчанию

denisbrain
Мне не нужно полное имя
а за
Цитата:
StatusBar1.Panels[1].text:=IntToStr(RichEdit1.CaretPos. Y+1)+' : '+IntToStr(RichEdit1.CaretPos.X+1);
воткни его в
RichEdit1Change
RichEdit1KeyDown
RichEdit1MouseDown
Спасибо
Ш.Р.Ю.-программист! йопта!!!

Последний раз редактировалось munthrekosh; 27.02.2012 в 15:00.
munthrekosh вне форума Ответить с цитированием
Старый 27.02.2012, 15:12   #4
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

1. Каждая акция на TActionToolBar представлена классом TActionClients.
В свою очередь, у TActionClients есть свойство Items (тоже TActionClients).
После вставки элементов в список Items у кнопки на TActionToolBar появляется треугольник, показывающий что есть вложенные элементы.
В конечном итоге, получается как на рисунке. Во всяком случае, похоже.
Прик вне форума Ответить с цитированием
Старый 27.02.2012, 15:27   #5
munthrekosh
Пользователь
 
Аватар для munthrekosh
 
Регистрация: 12.11.2011
Сообщений: 80
По умолчанию


А трельгольничка всё нет

denisbrain, а ты мне всётаки помог с именнем. такой код был излишен но вот что я оттуда извлёк.
Код:
procedure TForm1.FileOpen1Accept(Sender: TObject);
begin
  RichEdit1.Lines.LoadFromFile(FileOpen1.Dialog.FileName);
  Form1.Caption:=ExtractFileName(FileOpen1.Dialog.FileName);
end;

procedure TForm1.FileSaveAs1Accept(Sender: TObject);
begin
  RichEdit1.Lines.SaveToFile(FileSaveAs1.Dialog.FileName);
  Form1.Caption:=ExtractFileName(FileSaveAs1.Dialog.FileName);
  RichEdit1.Modified:=False;
end;
Спасибо
Ш.Р.Ю.-программист! йопта!!!
munthrekosh вне форума Ответить с цитированием
Старый 27.02.2012, 15:50   #6
munthrekosh
Пользователь
 
Аватар для munthrekosh
 
Регистрация: 12.11.2011
Сообщений: 80
По умолчанию

Так всё таки как сделать раскрывающийся список?
Ш.Р.Ю.-программист! йопта!!!
munthrekosh вне форума Ответить с цитированием
Старый 27.02.2012, 15:51   #7
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

Показываю на картинках.
Изображения
Тип файла: gif 001.gif (20.0 Кб, 129 просмотров)
Тип файла: gif 002.gif (4.8 Кб, 132 просмотров)
Прик вне форума Ответить с цитированием
Старый 27.02.2012, 16:35   #8
munthrekosh
Пользователь
 
Аватар для munthrekosh
 
Регистрация: 12.11.2011
Сообщений: 80
По умолчанию

Нет, Прик, это не то что нужно.
Ш.Р.Ю.-программист! йопта!!!
munthrekosh вне форума Ответить с цитированием
Старый 02.04.2012, 22:05   #9
OlegPrograming5
Пользователь
 
Регистрация: 12.01.2009
Сообщений: 42
По умолчанию

Прик, я воспользовался вашим советом и, если у Action3 есть картинка, но нет заголовка (Caption), то при наведении мыши на пункт картинка исчезает. Интересно, почему? (Delphi7)
OlegPrograming5 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Позиция курсора в EmbeddedWB mosq Компоненты Delphi 0 12.02.2010 02:21
Позиция курсора в DBEdit Evgenii Компоненты Delphi 1 20.11.2009 02:39
Позиция курсора в заголовке NieL Общие вопросы Delphi 3 17.12.2008 18:01
Позиция курсора Arkuz Общие вопросы Delphi 2 11.10.2008 01:39
Позиция курсора Манжосов Денис :) Помощь студентам 3 25.04.2008 16:56