The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Решение проблем с русским языком в Lazarus IDE"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Разговоры, обсуждение новостей (Public)
Изначальное сообщение [ Отслеживать ]

"Решение проблем с русским языком в Lazarus IDE"  
Сообщение от opennews on 07-Дек-08, 10:18 
Решение проблем с русским языком в Lazarus, Delphi-подобной среда разработки для FreePascal (http://iar.spb.ru/tips/lazarus-in-linux).

URL: http://iar.spb.ru/tips/lazarus-in-linux
Новость: https://www.opennet.ru/opennews/art.shtml?num=12206

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Решение проблем с русским языком в Lazarus IDE"  
Сообщение от Labuzhskiy email on 07-Дек-08, 10:18 
В версии Lazarus 0.9.26, не удаётся инвертировать строки, содержащие русскую раскладку. В версии Lazarus 0.9.24 подобной проблемы не было.
unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs,
  StdCtrls, Buttons;

type

  { TForm1 }

  TForm1 = class(TForm)
    BitBtn1: TBitBtn;
    Label1: TLabel;
    label2: TLabel;
    procedure BitBtn1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
    procedure InvertString(var InputSTR, OutputSTR: string);
  end;

var
  Form1: TForm1;
  s, s1: UTF8String;

implementation

{ TForm1 }

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
InvertString(s, s1);
label2.Caption:=s1;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
s:=''; s1:='';
s:= AnsiToUtf8(inputbox('Введите строчку для инвертирования', 'Ваша строка:', ''));
label1.Caption:= Utf8ToAnsi(s);
end;

procedure TForm1.InvertString(var InputSTR, OutputSTR: string);
var i, j, k :integer;
    b       :string;
begin
i:=1; j:=0; k:=0; OutputSTR:='';
b:=InputSTR;
for i:=1 to length(InputSTR) do j:=j+1;
for k:=j downto 1 do
OutputSTR:=OutputSTR+b[k];
end;

initialization
  {$I unit1.lrs}

end.

Алгоритм этот ранее я подвязывал, чтобы имя файла узнавать при выборе его через OpenDialog, до 1-ого "\" символы в строке считал. А теперь пути Windows, содержащие русские символы не работают. *DONT_KNOW*

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру