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

Вниз

Бегуший текст в кнопке   Найти похожие ветки 

 
FIL-23   (2011-06-14 12:04) [0]

проблемка... есть кнопка и есть текст , текст не влезает в кнопку, поэтому нужно сделать бегущий текст. может кто поделиться кодом?


 
Sergey   (2011-06-14 12:08) [1]

Ты такое хоть гдето видел?


 
Ega23 ©   (2011-06-14 12:16) [2]


> Ты такое хоть гдето видел?

У меня такое было написано. И кнопка и Label. Сидел в командировке, было нефиг делать. Ни разу не использовал.


 
FIL-23   (2011-06-14 12:16) [3]

>Sergey
а что - то в этом есть нереальное?


 
FIL-23   (2011-06-14 12:17) [4]

>Ega23 ©
дык поделись, видишь же народ нуждается :)


 
oldman ©   (2011-06-14 12:22) [5]

Цикл начинается
 TButton.Caption:=кусок длинной строки
 сдвиг куска строки
Конец цикла

бежать будет "побуквенно", но сойдет


 
Ega23 ©   (2011-06-14 12:22) [6]


> дык поделись, видишь же народ нуждается :)


Не осталось, нафиг оно нужно-то?
Да там кода всего ничего, сам напишешь за час.


 
Sergey   (2011-06-14 12:23) [7]

Нереального ничего. Просто представил себе интерфейс с кнопками в которых бежит текст. Ужас.


 
Sergey   (2011-06-14 12:26) [8]

Первое что пришло в голову. Текст загоняешь в одномерный массив.
Потом делаешь masiv[i]:=masiv[i+1]
А в последняя запись массива равна первой.
Будет крутится по кругу.


 
oldman ©   (2011-06-14 12:27) [9]


> Sergey   (14.06.11 12:23) [7]
> Нереального ничего. Просто представил себе интерфейс с кнопками
> в которых бежит текст. Ужас.


Не...
Ужас - дбгрид, в котором бежит текст...


 
Ega23 ©   (2011-06-14 12:30) [10]


> Ужас - дбгрид, в котором бежит текст...


Ужас - это TBitBtn с иконками от windows 3.1


 
Rouse_ ©   (2011-06-14 12:34) [11]

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, ExtCtrls;

type
 TForm1 = class(TForm)
   Button1: TButton;
   procedure Timer1Timer(Sender: TObject);
   procedure FormCreate(Sender: TObject);
 private
   ButtonCaptionCursor: Integer;
   function GenerateButtonCaption: string;
   procedure WMTimer(var Message: TWMTimer); message WM_TIMER;
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
 SetTimer(Handle, 0, 100, nil);
end;

function TForm1.GenerateButtonCaption: string;
const
 ButtonCaption = "Не хочу учиться, хочу все на блюдечке с голубой каемочкой и чтоб меня все программистом называли...";
 ButtonCaptionLen = 8;
var
 CurrentLen: Integer;
begin
 Result := Copy(ButtonCaption, ButtonCaptionCursor, ButtonCaptionLen);
 Inc(ButtonCaptionCursor);
 if ButtonCaptionCursor = Length(ButtonCaption) then
   ButtonCaptionCursor := 1;
 CurrentLen := Length(Result);
 if CurrentLen < ButtonCaptionLen then
   Result := Result + " " + Copy(ButtonCaption, 1, ButtonCaptionLen - CurrentLen - 1);
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
 Button1.Caption := GenerateButtonCaption;
end;

procedure TForm1.WMTimer(var Message: TWMTimer);
begin
 Button1.Caption := GenerateButtonCaption;
end;

end.


 
Andy BitOff ©   (2011-06-14 12:34) [12]

http://delphimaster.net/view/1-1116778118


 
MonoLife ©   (2011-06-14 12:35) [13]


> Просто представил себе интерфейс с кнопками в которых бежит
> текст

если при наведении курсора мыши, то сойдет)


 
Sergey   (2011-06-14 12:39) [14]

При наведении мышки лучше хинт показать.


 
Andy BitOff ©   (2011-06-14 12:43) [15]


> Sergey   (14.06.11 12:39) [14]
> При наведении мышки лучше хинт показать.

Тоже бегущий


 
Sergey   (2011-06-14 12:50) [16]

Лучше убегающим. От мышки :)


 
Inovet ©   (2011-06-14 12:51) [17]

Это что. На днях видел где-то: текст не вошёл на кнопку и отобразаился в две строки, но вылез сверху и снизу за границы кнопки. Видимо специально этого добивались, чтобы при локалицации заметить.


 
И. Павел ©   (2011-06-14 13:50) [18]

> [0] FIL-23   (14.06.11 12:04)

Сделайте кнопку шире. Не мучьте юзеров!


 
Sergey   (2011-06-14 14:01) [19]

Если длина кнопки критична, можно сделать две. И на кепшине первой написать первую половину текста на второй - вторую. Обработчик сделать один.


 
Sergey   (2011-06-14 14:01) [20]

Сори злой я сегодня чегото.


 
Rouse_ ©   (2011-06-14 14:01) [21]

Кнопку шире делать не надо, тут топик стартеру лучше DesignGuidе проштудировать и прояснить для себя момент, стоит ли использовать кнопку для вывода текста в виде "многабукф ниасилил..."


 
Ega23 ©   (2011-06-14 14:06) [22]

Кнопки вообще только две должно быть: "ОК" и "Отмена"


 
oldman ©   (2011-06-14 14:42) [23]

Кнопка должна быть одна.
Большая.
"Хочу, чтобы все заработало!"


 
Dennis I. Komarov ©   (2011-06-14 14:48) [24]

И "красная"


 
Sergey   (2011-06-14 14:52) [25]

Удалено модератором
Примечание: Флудить завязывай


 
Германн ©   (2011-06-14 16:50) [26]

Предлагаю заменить эту кнопку на TSecretPanel от RxLib.
TSecretPanel имеет возможность размещения "скрытого" текста и изображения, доступных для отображения при установленном в True значении свойства Active. Свойство Lines задает список строк текста, который будет "прокручиваться" в направлении снизу вверх или справа налево (в зависимости от значения свойства ScrollDirection) в клиентской области компоненты TSecretPanel при установке Active = True. Если свойство Glyph ассоциировано с графическим изображением, то одновременно это изображение будет показано в области TSecretPanel, заданной свойством GlyphLayout. По окончании прокрутки текста, если свойство Cycled = False, свойство Active автоматически установится в значение False, если же Cycled = True, прокрутка текста возобновится сначала.


 
Dennis I. Komarov ©   (2011-06-14 16:52) [27]

Вообще-то hint для этого есть...


 
Медвежонок Пятачок ©   (2011-06-14 18:52) [28]

знание русского и незамутненная голова помогут сделать понятную, короткую и небегающую надпись на кнопке


 
Mike Kouzmine   (2011-06-15 20:38) [29]

решение не очень. говорю, как пользователь.



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

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

Наверх





Память: 0.51 MB
Время: 0.003 c
15-1307392194
Юрий
2011-06-07 00:29
2011.10.02
С днем рождения ! 7 июня 2011 вторник


2-1307636761
Тимофей1
2011-06-09 20:26
2011.10.02
floattostrF форматирование числа в текст


2-1308121329
mefodiy
2011-06-15 11:02
2011.10.02
Разница между TIdAttachment и TIdAttachmentFile


2-1307895125
Leon-Z
2011-06-12 20:12
2011.10.02
Предупреждение компилятора.


2-1308141783
Patrick1968
2011-06-15 16:43
2011.10.02
Конвертация из Excel





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский