Petit utilitaire pour inserer automatiquement des balises HTML à copier coller pour mettre en forme des message sur des forum qui acceptent le html. possibilité d'insérer une photo.
Source / Exemple :
unit forum_util;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Menus, XPMan,unit2;
type
TForm1 = class(TForm)
MainMenu1: TMainMenu;
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
CheckBox1: TCheckBox;
GroupBox3: TGroupBox;
CheckBox2: TCheckBox;
Label1: TLabel;
Label2: TLabel;
Edit3: TEdit;
Label3: TLabel;
Button1: TButton;
CheckBox3: TCheckBox;
CheckBox4: TCheckBox;
CheckBox5: TCheckBox;
ComboBox1: TComboBox;
Label6: TLabel;
CheckBox6: TCheckBox;
Edit5: TEdit;
Label7: TLabel;
Button2: TButton;
Button4: TButton;
Label8: TLabel;
Edit7: TEdit;
Button5: TButton;
Button6: TButton;
Button7: TButton;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
RadioButton3: TRadioButton;
RadioButton4: TRadioButton;
Memo1: TMemo;
Label9: TLabel;
Edit8: TEdit;
RadioButton5: TRadioButton;
RadioButton6: TRadioButton;
RadioButton7: TRadioButton;
Edit6: TEdit;
Menu1: TMenuItem;
Aide1: TMenuItem;
Quitter1: TMenuItem;
XPManifest1: TXPManifest;
ComboBox3: TComboBox;
ComboBox4: TComboBox;
ComboBox5: TComboBox;
Button8: TButton;
Button9: TButton;
Button3: TButton;
ColorDialog1: TColorDialog;
Button10: TButton;
procedure Button2Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure Quitter1Click(Sender: TObject);
procedure Aide1Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure Button9Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure chargement (sender: tobject);
procedure Button10Click(Sender: TObject);
//procedure ColorDialog1Close(Sender: TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
var
Form1: TForm1;
taille, couleur,r,g,b: integer;
code,cible,alignement,lien,alt,sizep,lienout: string;
gras,ligne,italique,sgras,sligne,sitalique,result: string;
f:textfile;
implementation
{$R *.dfm}
Procedure tform1.chargement (sender:Tobject);
begin
if not fileexists('liensim.txt')
then begin
assignfile(f,'liens.txt');
rewrite(f);
closefile(f);
end;
if not fileexists('liensim.txt')
then begin
assignfile(f,'liensim.txt');
rewrite(f);
closefile(f);
end;
combobox3.Items.LoadFromFile('liensim.txt');
combobox4.Items.LoadFromFile('liens.txt');
combobox5.Items.LoadFromFile('liens.txt');
radiobutton5.checked:=true;
radiobutton2.checked:=true;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
if checkbox6.Checked then cible:=' target="_blank"';
edit5.text:=('<a href="'+combobox5.Text+'"'+cible+'>'+edit7.text+'</a>');
end;
procedure TForm1.Button6Click(Sender: TObject);
begin
combobox1.Text:='Http://';
combobox4.Text:='Http://';
Edit3.clear;
radiobutton2.Checked:=true;
checkbox2.Checked:=false;
checkbox1.Checked:=false;
end;
procedure TForm1.Button7Click(Sender: TObject);
begin
memo1.Clear;
checkbox3.Checked:=false;
checkbox4.Checked:=false;
checkbox5.Checked:=false;
radiobutton5.checked:=true;
edit6.text:='#00000';
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
combobox5.Text:='Http://';
Edit5.Clear;
Edit7.Clear;
checkbox6.checked:=false;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
cible:='';
lien:='';
lienout:='';
alignement:='<p>';
alt:=' alt="'+edit8.Text+'"';
if checkbox2.Checked then cible:=' target="_blank"';
if checkbox1.Checked then begin
lien:='<a href="'+combobox4.text+'"'+cible+'>';
lienout:='</a>';
end;
if radiobutton2.checked then alignement:='<p align="left">';
if radiobutton3.checked then alignement:='<p align="center">';
if radiobutton4.checked then alignement:='<p align="right">';
edit3.Text:= alignement+lien+'<img src="'+combobox3.text+'"'+alt+'>'+lienout+'</p>';
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
gras:='';
sgras:='';
italique:='';
sitalique:='';
ligne:='';
sligne:='';
if checkbox3.checked then
begin
gras:='<b>';
sgras:='</b>';
end;
if checkbox4.checked then
begin
italique:='<i>';
sitalique:='</i>';
end;
if checkbox5.checked then
begin
ligne:='<u>';
sligne:='</u>'
end;
if radiobutton5.checked then alignement:='<p align="left">';
if radiobutton6.checked then alignement:='<p align="center">';
if radiobutton7.checked then alignement:='<p align="right">';
memo1.Text:=alignement+gras+italique+ligne+'<font color="'+edit6.Text+'"'+sizep+'>'
+memo1.Text+'</font>'+sgras+sitalique+sligne+'</p>';
end;
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
taille:= combobox1.itemindex;
if taille =0 then sizep:=' size="3" ';
if taille =1 then sizep:=' size="4" ';
if taille =2 then sizep:=' size="5" ';
if taille =3 then sizep:=' size="6" ';
if taille =4 then sizep:=' size="7" ';
end;
procedure TForm1.Quitter1Click(Sender: TObject);
begin
form1.Close;
end;
procedure TForm1.Aide1Click(Sender: TObject);
begin
beep;
form2.ShowModal;
end;
procedure TForm1.Button8Click(Sender: TObject);
begin
if fileexists('liens.txt')
then begin
if length(combobox4.Text)>15 then begin
assignfile(f,'liens.txt');
append(f);
writeln(f,combobox4.text);
closefile(f);
end;
end;
end;
procedure TForm1.Button9Click(Sender: TObject);
begin
if length(combobox5.Text)>15 then begin
if fileexists('liens.txt')
then begin
assignfile(f,'liens.txt');
append(f);
writeln(f,combobox5.text);
closefile(f);
end;
end;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
if length(combobox3.Text)>15 then begin
if fileexists('liensim.txt')
then begin
assignfile(f,'liensim.txt');
append(f);
writeln(f,combobox3.text);
closefile(f);
end;
end;
end;
procedure TForm1.Button10Click(Sender: TObject);
begin
colordialog1.execute;
B:=getBvalue(ColorToRGB(colordialog1.Color));
G:=GetGValue(ColorToRGB(colordialog1.Color));
R:=GetRValue(ColorToRGB(colordialog1.Color));
Result:='#'+IntToHex(R,2)+IntToHex(G,2)+IntToHex(B,2);
edit6.text:=result;
end;
end.
Conclusion :
Mon premier programme, il y a certainement des améliorations à faire sur le code, si vous avez des conseils ils sont les bienvenus
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.