Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
билеты_все.docx
Скачиваний:
3
Добавлен:
01.03.2025
Размер:
121.92 Кб
Скачать

Билет 16. Билет 26. Html. Разбиение окна на фреймы

Иногда Web-страницу делят на несколько частей. Одна такая часть называется фреймом. В каждом фрейме отображается отдельная Web-страница. Структура фреймов описывается в специальном файле. Таким образом, для создания страницы с двумя фреймами надо по крайней мере три файла: в одном описывается структура, а в двух других — страницы, которые будут показаны в первом и втором фреймах.

В отличие от обычной Web-страницы, страница, которая описывает структуру фреймов, не содержит тела, то есть блока  

<BODY>... </BODY>. Вместо этого записывается блок <FRAMESET>...</FRAMESET>.

Описание структуры заключено внутрь блока <FRAMESET>...</FRAMESET>. В параметре COLS тэга <FRAMESET> указывается, сколько фреймов-столбцов будет на странице и какова ширина каждого из них (через запятую). Ширина фреймов может быть задана в процентах от всей ширины окна браузера или в пикселах. Знак * означает «использовать все оставшееся место». В этом примере левая часть занимает 30 процентов ширины окна.

Параметр FRAMESPACING тэга <FRAMESET> задает ширину границы между фреймами в пикселах. Границу можно перетаскивать мышкой, изменяя размеры фреймов, если это разрешено.

Каждый фрейм описывается непарным тэгом <FRAME>, у которого есть один обязательный параметр SRC, указывающий имя файла для или URL документа в Интернете, который будет загружен в этот фрейм.

Параметр NORESIZE тэга <FRAME> говорит о том, что размеры этого фрейма запрещено менять. Параметр SCROLLING задает режим работы вертикальной линейки прокрутки и может принимать три значения:

  • yes — линейка прокрутки видна всегда

  • no — прокрутка запрещена, линейки прокрутки нет

  • auto — линейка прокрутки появляется только тогда, когда информация не помещается в окно

Каждый фрейм может иметь имя, которое указывается в параметре NAME тэга <FRAME>. Оно служит для того, чтобы загружать документы в другой фрейм, обращаясь к нему по имени

Аналогично описывается и деление страницы на фреймы-строки. Для этого используется параметр ROWS тэга <FRAMESET>

Часто один фрейм используется как оглавление, а другой является рабочей частью. Для того, чтобы после щелчка на пункте оглавления заданный файл открывался не в том же фрейме, а в другом, в параметре TARGET тэга <A> надо указать имя нужного

фрейма.

Задание 16: Разработать класс, характеризующий фильм (название, режиссер, год выпуска и т.д). Класс должен иметь конструктор по умолчанию и конструктор с параметрами

#include<string>

#include<iostream>

#include<stdio.h>

#include <stdlib.h>

#include <conio.h>

using namespace std;

//объявление класса

class Film

{

public:

Film();

Film(std::string n,std::string a,int y);

~Film();

std::string GetName();

void SetName(std::string n);

std::string GetAuthor();

void SetAuthor(std::string a);

int GetYear();

void SetYear(int y);

private:

std::string name;

std::string author;

int year;

};

//программа использующая класс

int main()

{

int N=3;

Film R1;

Film R2("Avatar","Pupkin",1998);

R1.SetName("Raduga");

R1.SetAuthor("Ivanov");

R1.SetYear(2022);

cout<<R1.GetName()<<" "<<R1.GetAuthor()<<" "<<R1.GetYear()<<endl;

cout<<R2.GetName()<<" "<<R2.GetAuthor()<<" "<<R2.GetYear()<<endl;

Film R3[N];

std::string nn;

std::string na;

int ny;

for(int i=0;i<N;i++)

{

cout<<"Enter name: ";

cin>>nn;

R3[i].SetName(nn);

cout<<"Enter author: ";

cin>>na;

R3[i].SetAuthor(na);

cout<<"Enter year: ";

cin>>ny;

R3[i].SetYear(ny);

}

for(int i=0;i<N;i++)

cout<<R3[i].GetName()<<" "<<R3[i].GetAuthor()<<" "<<R3[i].GetYear()<<endl;

getch();

return 0;

}

Film::Film()//конструктор по умолчанию

{}

Film::Film(std::string n,std::string a,int y) //конструктор с параметрами

{

name=n;

author=a;

year=y;

}

Film::~Film()

{}

std::string Film::GetName()

{

return name;

}

std::string Film::GetAuthor()

{

return author;

}

void Film::SetName(std::string n)

{

name=n;

}

void Film::SetAuthor(std::string a)

{

author=a;

}

int Film::GetYear()

{

return year;

}

void Film::SetYear(int y)

{

year=y;

}

Задание 26: Разработать класс, характеризующий функцию (процедуру) любого языка программирования (имя, тип и кол - во параметров и т.д.). Класс должен иметь дружественные функции ( операторы ) ввода/вывода (<< и >>).

#include<string>

#include<iostream>

#include<stdio.h>

#include<stdlib.h>

#include<conio.h>

using namespace std;

class Function

{

private:

std::string Name;

std::string Type;

int Kolichestvo;

public:

Function();

Function(std::string nam,std::string t,int k);

~Function();

std::string GetName();

void SetName(std::string nam);

std::string GetType();

void SetType(std::string t);

int GetKolichestvo();

void SetKolichestvo(int k);

friend std::istream& operator>>(std::istream &is,Function &F)

{

cout<<endl<<"Name: ";

is>>F.Name;

cout<<"Type: ";

is>>F.Type;

cout<<"Kolichestvo: ";

is>>F.Kolichestvo;

return is;

};

friend std::ostream& operator<<(std::ostream &os,Function &F)

{

os<<F.Name<<" ";

os<<F.Type<<" ";

os<<F.Kolichestvo;

return os;

};

};

int main()

{

Function F1;

Function F2("Vvod ","int ",3);

std::cout<<F2;

std::cin>>F1;

std::cout<<F1;

getch();

return 0;

}

Function::Function()

{}

Function::Function(std::string nam,std::string t,int k)

{

Name=nam;

Type=t;

Kolichestvo=k;

}

Function::~Function()

{}

std::string Function::GetName()

{ return Name;

}

std::string Function::GetType()

{

return Type;

}

int Function::GetKolichestvo()

{

return Kolichestvo;

}

void Function::SetName(std::string nam)

{

Name=nam;

}

void Function::SetType(std::string t)

{

Type=t;

}

void Function::SetKolichestvo(int k)

{

Kolichestvo=k;}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]