Студентам - о программировании. Вопросы и ответы из рассылки RusFAQ.ru: Программирование на Delphi
 
 
 
   

Студентам

Примеры задаваемых студентами вопросов. С комментариями.

 
 

Вопросы и ответы из рассылки RusFAQ.ru: Программирование на Delphi

26.03.2010
14:02

Подборка с 27.05.2006 по 30.06.2006

Приступы маразма и пароксизмы ламеризма в вышеуказанной рассылке. Выборка из архива с 27.05.2006 по 30.06.2006. Не иначе, как весеннее обострение

Вопрос № 44.106
Здраствуйте,эксперты!
Обьясните и если можно покажите смысл ошибки "Statement expected but 'FUNCION' found" в моей программе (в приложении). Заранее благодарен!
Чукча не читатель, чукча писатель


Вопрос № 44.208
Здравствуйте все уважаемые эксперты.
Хотелось спросить почему у меня тормозит программа на Delphi ,,??,, Она служит для копирования файлов с носителей. Но очень долго работает и сама на время работы зависает как этого избежать и ускорить её работу ? Спасибо за внимание.
Выпрямить руки?


Вопрос № 44.235
Здраствуйте! Как организовать проверку пароля в программе. Типа сравнение из TEdit с какой нибудь переменной. Я знаю что такое может прокатить с цифрами (val потом if a=12345 then ...) а вот буквы уже не сравнишь... может какие компоненты есть. Да и если не сложно обьясните как пользоваться этим компнентом... Жду ответов =)
А-А-А-А-А-А, БЛЯ!!!! Без комментариев!!!
Хотя нет, не сдержусь - именно из-за таких долбоёбов и появляются истории типа "программист на Delphi: подскажите, где скачать компонент, помещающий льва в клетку" :(


Вопрос № 44.327
Здравствуйте, уважаемые эксперты! Не поможете ли вы мне в создании такой программы на Delphi: "Создать типизированный файл, содержащий целые числа. Нужно открыть созданный фай и подсчитать сумму чисел и их количество". Заранее ОГРОМНОЕ ВАМ СПАСИБО!!!!!!
Тварь, зачем ты в учебное заведение пошел?


Вопрос № 44.621
Здраствуйте уважаемые эксперты
Как можно зделать чтобы на форме небылобы кнопок: Close, Minimize и Maximize, и чтобу форма вобще былабы без этой синеи полоски с верху? Заранее спасибо.
Object Inspector нам не друг. Книга - тоже. Лучше товарищей на форуме своей тупизной и ленью приколоть
Кроме того, читая вопрос, так и хочется дополнить "А еще под скажите, когда пробел междусловами надо ставить, а когда не т?"


Вопрос № 45.072
Добрый день.
Помогите пожалуйста решить проблему. При нажитию кнопки мне нужно сделать проверку если файл в папке (Libase.txt) имеет размер 4 952 байт выполнается одно действие иначе - другое.
Дотошный какой...

Отвечает: Kazakh
Здравствуйте, Maximus.
Вот код взятый из справки по Delphi для функции FileSize. Этот код работает если файл не занят - не открыт другим процессом. Если надо мерять размер занятого файла, то можно сначала скопировать (function CopyFile), а потом мерять.
FindFirst и TSearchRec.Size еще не придумали, понятное дело... А до Москвы нужно добираться на дрезине, а если дрезину не дали - то пешком через Волгодонск


Вопрос № 45.084
Добрый день, уважаемые! Вопрос такой: есть переменные SortL и SortR типа byte, в которых хранится тип сортировки:
0- по имени
1- по типу
и тд. Значения этих переменных записываются и считываются из ini-файла. Если же определить новый тип

type Sort = (sName, sType);
var SortL, SortR: TSort;

то как записать и считать? Ни WriteInteger, ни WriteString , не подходят. Посоветуйте как выйти из положения или проще так и оставить Byte? Я для удобства хотел, чтобы потом не путаться в нулях и единицах
Ну, вопрос как вопрос.. Для новичка вполне себе простительно не знать Integer(sName)
В ответах продолжает отжигать товарищ Kazakh

Отвечает: Kazakh
Здравствуйте, Савенко Вадим Иванович!
Не надо лишнего(Бля, запомните это! Читаем дальше) (свой тип и т.д.) - используйте стандарные классы. Для вашей проблемы этого вполне достаточно. Мое вИдение решения вашего вопроса в использовании класса (внимание!) TStringList. Итак,

1.
var
Form1: TForm1;
SortList:TStringList; // объявляем глобальную переменную

2.
procedure TForm1.FormCreate(Sender: TObject);
begin
SortList:=TStringList.Create; // Создаем список
if FileExists('sort.ini') then // если есть ini файл
SortList.LoadFromFile('sort.ini'); // то грузим в список
end;

3.
procedure TForm1.Button2Click(Sender: TObject);
begin
SortList.Add('По имени'); // при необходимости добавляем новый тип сортировки
SortList.Add('По типу'); // при необходимости добавляем новый тип сортировки
end;

4.
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(IntToStr(SortList.IndexOf('По типу'))); // так можно к нему обращаться
// или так
ShowMessage(SortList.Strings[0]); // не забываем что список начинается с 0
end;

5.
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if SortList.Count>0 then // если список не пустой
SortList.SaveToFile('sort.ini'); // сохраним его в ini файл
SortList.Free; // освободим переменную
end;

6.
procedure TForm1.Button3Click(Sender: TObject);
begin
// не верите что список существует?
ShowMessage(SortList.DelimitedText); // проверим
end;

А вообще у этого класса есть еще много полезных свойств и методов. Например, св-во Duplicate позволяет контролировать повторяющиеся записи а метод Sort отсортировать по содержимому.
Через Волгодонск - не наш выбор. Наш Казах пойдет через родные Алматы - так увлекательнее


Вопрос № 45.180
...
Вопрос приводить даже не надо. Ответы гражданина Казаха жгут сами по себе. Итак.

Отвечает: Kazakh
Здравствуйте, Андрющенко Вячеслав Васильевич! Попробуйте так

for i:=0 to ComponentCount-1 do
  begin
    FindComponent(Components[i].Name).left:=Round(Width/2);
    FindComponent(Components[i].Name).top:=i*30;
  end;

Даже если ему дадут дрезину - он все равно пойдет через Алматы. Из принципиальных соображений.


Вопрос № 45.220
Здраствуйте, уважаемые эксперты. У меня такая проблема. Мне нужно использовать звуки транскрипции в моей проге. Шрифт у меня есть...
Дальше читать не смог. Упал со стула


Вопрос № 45.378
Здравствуйте, уважаемые эксперты.
вопрос такой:можно в делфи сделать так, чтобы по нажатию какой-нибудь комбинации клавиш у меня вставлялись например строки procedure
begin
end
чтобы не приходилось каждый раз это набирать или чтобы сразу begin с end. Спасибо за ответы и помощь
Вопрос ясен. Смотрим дальше.

Отвечает: Lexus
Здравствуйте, Lichkaty Alexander!
Можете попробовать следующим образом:
Объявляете в начале программы процедуру или функцию, например:

private
procedure proc1(s:string);

И нажимаете Ctrl+Shift+C и делфи сама вставит следующий код в программе:

procedure Tform1.proc1(s:string);
begin

end;

Можно сразу писать код, очень удобно и даже лучше чем вы просили!
---------
"Все что вы скажете будет использовано против вас в суде..." (УК РФ)
Н-да... А чтобы забить гвоздь - можно взять отбойный молоток. Гвоздь забьется вместе с куском поверхности. Даже лучше, чем вы просили!
И в УК нет такого, пиздит товарищ.


Вопрос № 45.470
Здравствуйте, уважаемые эксперты! Подскажите, пожалуйста, литературу по DLL в интеренете. Мне нужно не просто "что такое и зачем", а как можно подробнее, до мелочей. Заранее очень благодарен!
Это было лирическое отступление. Оказывается, в последнее время не только ламеры рождаются...


Вопрос № 45.609
Уважаемые эксперты, подскажите пожалуйста, как в Delphi или в чем либо другом (Excel например) составить список всех вариантов четырехзначного числа 9999: 0001,0002,0003 и так далее до 9999, чтобы они были по порядку! Очень нужно!
Ну, я даже не знаю...


Вопрос № 45.647
Добрый день, Уважаемые Эксперты!
У меня проблема: Задача:
1) Сохранить изображение из компоненты TImage в текстовый файл.
2) Затем из полученного текстового файла зугрузить изображение обратно в компоненту TImage.
Кто знает - подскажите :) Заранее благодярю
А препод у товарища юморной :):)


Вопрос № 45.880
Подскажите как вырезать файл из папки [х] и вставить его в папку [у]! Желательно на примере!
Ножницами, бля.

Отвечает: Савенко Вадим Иванович
Здравствуйте, LanceLoty!
Для файловых операций используйте SHFileOperation

function MoveFiles( Handle : Hwnd; FSource : string; FTarget : string;
                    Move : Boolean; AutoRename : Boolean ) : Integer;
var
  SHFileOpStruct : TSHFileOpStruct;
begin
  with SHFileOpStruct do
    begin
      Wnd := Handle;
      wFunc := FO_MOVE;
      pFrom := PChar(FSource);
      pTo := PChar(FTarget);
      fFlags := FOF_ALLOWUNDO;
      fAnyOperationsAborted := False;
      hNameMappings := nil;
      lpszProgressTitle := nil;
    end;
  Result := SHFileOperation( SHFileOpStruct );
end;

Легкие пути типа RenameFile или MoveFile - не наш метод... И сразу вспомнился Kazakh - Не надо лишнего :)


Вопрос № 46.008
Доброе время суток...
1. Не могу найти описание функций CreateEllipticRgn, CreateEllipticRgnIndirect. Желательно на русском языке... 2. А может есть более удобные функции для рисования заставок?
Ого!


Вопрос № 46.190
дравствуйте, уважаемый эксперты!Задам совсем простой вопрос:как a:Integer возвести в квадрат? Пробовал так a^2 но что-то не получается...
Сука делфя!! Почему она бейсиковый синтаксис не понимает?! Ну а уж a*a - это не наш путь.


Вопрос № 46.283
Здравствуйте Уважаемые Эксперты!
Как сделать так чтобы Delphi записывала(никого не спрашивая) файлы на CD -DVD диски.
Вот уж никогда не думал, что из делфи можно сделать нюрку... Век живи - век учись, права пословица.


Вопрос № 46.323
Добрый день , уважаемые!
Вопрос по компоненту AdvMenu. На форме AdvMainMenu1 и AdvMenuFantasyStyler1. Если написать AdvMenuFantasyStyler1.Style:= fsArctic; то все замечательно. А если так

var S: string;
......
S:= 'fsArctic';
AdvMenuFantasyStyler1.Style:= S;

то ошибка вылазит - несовместимые типы 'TFantasyStyle' и 'string'. Как быть? Я хочу в настройках менять стиль меню и записывать его в ini- файл , чтобы при следующем запуске был этот сохраненный ранее стиль ,а не выходит
Сразу перед глазами возникаею любитель сравнить 123456 и Edit1.Text.

Отвечает: Gh0stik
Здравствуйте, Савенко Вадим Иванович!
Поробуйте такой метод:

var S: TFantasyStyle;
................
S:= fsArctic; //либо S:= [fsArctic];
AdvMenuFantasyStyler1.Style:= S;

Вот так. Вопрос пусть ламеры читают. "Настоязщий программист всегда лучше знает, что нужно пользователю"


Вопрос № 46.332
Очень простой вопрос не дающий мне покоя: как вывести следующий формат времени: секунды, миллисекунды, микросекунды.
А ты его не чеши, балбес


Вопрос № 46.372
Обыскал всю Torry.net, но так и не нашел компонента, с помощью которого можно рисовать штриховые рамки для выделения части рисунка, чтобы можно было менять размеры рамки, ухватившись в угол рамки, чтоб можно было перетаскивать рамку в любую часть рисунка. Может быть кто-нибудь знает такой компонент? Или пример кода, который это реализует?
Ну да... А где взять компонент, который помещает льва в клетку?

Отвечает: sir henry
Здравствуйте, Xsid!
А Вы совершенно напрасно лазили в компоненты. :) Такое надо искать в готовых программах графических редакторов и никак иначе:
http://www.torry.net/pages.php?id=578

Ответ отправил: sir henry (статус: Академик)
Россия, Красноярск
----
Ответ отправлен: 16.06.2006, 06:14
Оценка за ответ: 5
Комментарий оценки:
Спасибо, я тоже так думал, но надеялся в глубине души, что все-таки есть компонент.
Бля, а я всю жизнь в глубине души надеюсь, что все-таки есть компонент, который будет мне минет делать, бегать за пивом и писать за меня программы. Блин, до сих пор не нашел, всю torry.net облазил :(


Вопрос № 46.647
Уважаемые эксперты!
Такой вот вопрос: Delphi7, создаю новый проект приложения. Добавляю следующие компоненты - Lable1, Label2, Label3 (:TLabel - стандартные) Button1 (:TButton - тоже стандарт). В обработчике TForm1.ButtonClick(Sender:TObject) пишу см. приложение.
После компиляции при нажатии на Button возникает интересная ситуация с Label.
Если не лень, проверьте сами, это не долго. Не могу понять почему так получается. За объяснения заранее благодарен.
Приложение:

procedure TForm1.ButtonClick(Sender:TObject);
var
 i:integer;
 ch:char;
 st:string;
begin
 st:='Abcd';
 for i:=60 to 62 do begin st[i]:=char(ord(60)); end;
 Label1.Caption:=chr(ord(60));
end;

Долго думал над конструкцией chr(ord(60)), потом понял - это типа FindComponent(Components[i].Name). Но больше всего порадовало "Интересная ситуация". Прям как "Товарищи ученые, у меня в подвале странный стук. Откуда он возникает?". Про st[60] говорить не будем...


Вопрос № 46.693
Здравствуйте, многоуважаемые эксперты!!! // Поздоровались
На самом деле я только начинаю изучать язык Дельфи. // Подлизнулись - буду юзать делфи, который вы пиздато знаете, а я пока еще маленький
У меня появилась задумка написать базу данных. // Выебнулись
Вопрос:
Как програмно считать каталог диска (CD или DVD), и сохранить этот каталог в виде текстового файла в той же директории, где находится запускной файл?
А вот как связаны базы данных и файловая система - я как-то не догнал. Наверное, все-таки, про базы он просто выебнулся...

Отвечает: Bochvarov NikB
Здравствуйте, Герасименко Алексей Анатольевич/Geer!
Как програмно считать каталог диска : посмотри FindFirst, FindLast.
Последовал совету Бочарова, посмотрел FindLast. Не нашел :(


Вопрос № 46.779
Доброго времени суток уважаемые эксперты.
Надеюсь что вы мне поможете, сессия гороит!! // Бля, что же ты, долбоёб, в ВУЗе делаешь? Ну вот на хуя тебя туда понесло?
В приложении нужно ввести пароль,если пароль 3 раза вводится неправильно, то выводится сообщение "Неправильный папроль.Доступ запрещен". И вот как то надо посчитать колво нажатий на кнопку.Вот.
Лучше поставить задачу так: Если 3 вопроса из тех, что задаются в ВУЗах, будут замечены в рассылке, то выводится сообщение "You're in the army now"


Вопрос № 47.180
Здравствйте, господа Эксперты! Помогите,пожалуйста, с таким вопрсом: есть текстовый файл, строки пронумерованы (т.е. начинаются с числа - пример в приложении). Как прочитать из этого файла строку с определенным номером и поместить ее, например, в Label? Если можно, поподробнее. Заранее спасибо!
Приложение:
1.Строка
2.Строка
3.Строка
...
n.Строка

Один из ответов поразил своей нетривиальностью. Итак, "Не будем изобретать велосипед, изобретем самокат". Пьеса для скрипки и рояля в кустах. Исполняет заслуженный потомок Билли, дважды почетный ламер республики Удмуртия, заслуженная жертва аборта METALLDOCTOR

Отвечает: METALLDOCTOR
Здравствуйте, Neiroman!
Поочерёдно считывайте строки в String, и если у этого СТРИНГА первые элементы будут нужным числом, то выходите из цикла и записывайте значение.
Примерно так:
Приложение:

AssignFile(F);
ReSet(F);
REPEAT
  ReadLn(F, Str);
UNTIL Str[1]='1' AND Str[2]='0' AND Str[3]='.'
Label1.Caption := Str;

Товарищ! Я хочу строчку нумер 65535

Комментарии

Оставить коммент

Представьтесь
Вве7ите8тр9 цифры
Комментарий:
 
Карта сайта
Новое
Бесплатные утилиты
FDate
01.09.2010 12:12
Раскладываем файлы

Бытовуха
Кошмар на улице Авиаторов
30.08.2010 20:24
 
Бытовуха
Не туда попали
30.08.2010 20:19
 
Бытовуха
С особым удовольствием
06.08.2010 07:25
 
Бытовуха
Мама папу пырнула
06.08.2010 07:25
 
Бытовуха
«Брата зарезал!»
06.08.2010 07:23
 
Бытовуха
«Мы ментуру не вызывали!»
06.08.2010 07:22
 
Поиск по сайту
Март 2010
01.08.2010 12:35
Занятные поисковые запросы, приведшие в марте 2010 на наш сайт

Братва
Глава 8
01.08.2010 11:35
 
Братва
Глава 7
01.08.2010 11:33
 
Счетчики
Картинки

Гей-парад

Зайчег

Отличный конкурс
Все картинки »